クラスのドキュメントを使用して作成したPHPスクリプトを機能させるために、クラスをロードしようとしています。
私のサーバーはPHP5.3を実行しているので、ドキュメントでは次のようにクラスをロードすることを推奨しています。
spl_autoload_register(function($class){
if (file_exists('/webgit/webroot/home/myUsername/www/elastica/lib/' . $class . '.php')) {
echo " found \n ";
require_once('/webgit/webroot/home/myUsername/www/elastica/lib/' . $class . '.php');
}
else {
echo " not found! ";
}
});
唯一異なるのは、ifとelseのスイートにechoを含めたことです。また、myUsernameは、実際にはサーバー上のファイルシステムパスにある私のユーザー名です。
次に、それ(ドキュメント)は、次のようにクラスの新しいインスタンスを作成することを提案しています。
$elasticaClient = new \Elastica\Client();
ただし、クラスが見つからないというエラーが発生します。エラーと私のif-elseのスイートを含めて、正確に出力されるものは次のとおりです。
見つかりません!致命的なエラー:クラス'Elastica\Client'が17行目の/webgit/webroot/home/myUsername/www/elastica/index.phpに見つかりません
17行目は、クラスのインスタンスを作成しようとしている行です。
現在、index.phpは上記のコードがある場所であり、私のサーバーの/ webgit / webroot / home / myUsername / www /elastica/にあります。
そして、すべてのクラスファイルは/ webgit / webroot / home / myUsername / www / elastica /lib/にあります
そのため、クラスを検索/ロードできない理由がわかりません。
これを解決するために助けていただければ幸いです。