0

ユーザーのログインステータスをチェックする関数がロードされています。ここにコードの小さなチャンクがあります...

//
// user is logged in, get user info
$user = Model\User::getByKey($_COOKIE['ukey']);
if($user->field('id') >= 1 || !isset($status)) {
    //
    // establish google connection
    Classes\Google\Google::construct($user->field('id'), $user->field('ga_account'));

...

ファイルのパスを完全に検出する __autoload 関数があります。ただし、「\Classes\Google\Google」クラスが見つからないため、致命的なエラーが発生します。

new Google() ... は /classes/google/google.class.php にあります。ファイルはそこにあり、autoload 関数には正しいファイル パスがありますが、クラスが見つからないのはなぜですか?

この特定の Google() クラス ファイルには名前空間がありません。これはすべてカスタム ビルドであり、サード パーティのフレームワークではありません。

4

1 に答える 1

1

1- class_exists を使用して、クラスがロードされていることを確認します。2-クラスがロードされていない場合、google.class.phpでダイを作成するため、ファイルがロードされているかどうかがわかります。3-クラスがロードされた場合、ここに新しいオブジェクトを作成します。テストして、クラス定義が真かどうかを確認できます。

于 2013-10-10T11:47:39.243 に答える