1

パスがハードコードされているのはなぜですか? 例えば:

require_once 'Zend/Gdata/Extension.php';

問題は、Zendフォルダーがルートにないことです-それはにありますlibrary/packages

すべてのファイルのパスを変更する必要がありますか? のようになる:

define('ROOT_PACKAGES', dirname(__FILE__) . "/library/packages/");

ROOT_PACKAGE.'Zend/Gdata/Extension.php';
4

1 に答える 1

0

質問しながら説明させてください。「Zend/Gdata/Extension.php」を使用する場合、サブディレクトリ Zend はどのディレクトリで検索されますか? 「/library/packages/」と答えると、重要な質問につながります。なんで?

更新:私の質問は、なぜそのディレクトリを使用するのかではなく、O/S がそのディレクトリをデフォルトのディレクトリとして持つ理由です。

いつでもデフォルトのディレクトリがあります。相対パスは、そのデフォルト ディレクトリを使用して評価されます。ただし、その値は特定のディレクトリにロックされていません。また、アプリの実行方法に依存します。Web アプリがあり、基本的にアプリ内のコードまたは Web サーバーがディレクトリを変更できると仮定します。

はい、ROOT_PACKAGES を使用してください。常に完全修飾ディレクトリを使用する必要があります。

于 2012-06-24T23:22:45.907 に答える