0

どうやら Zend Framework を使用して作成された TheStudio アプリケーションをインストールしようとしています。私のテスト サーバーは Ubuntu 12.04 を実行しており、アプリケーション ディレクトリは /home に保存されています。

私のエラーログは次のように述べています

PHP Fatal error:  require_once(): Failed opening required 'usr/share/php/libzend-frameworkphp/Zend/Loader/Autoloader.php'   
  (include_path='.:../library:../application/db:../application/models:../application/utils:../application/views/helpers:../application') in /home/application/config/config.php on line 22

config.php の 22 行目には次のように記載されています。

require_once '/usr/share/php/libzend-framework-php/Zend/Loader/Autoloader.php';

インクルード パスは次のとおりです。

define('PS',        PATH_SEPARATOR);
define('DS',        DIRECTORY_SEPARATOR);
define('ROOT_DIR',  dirname('home'));

// Modify include path
$paths = '.' . PS . '..' . DS . 'library'
         . PS . '..' . DS . 'application' . DS . 'db'
         . PS . '..' . DS . 'application' . DS . 'models'
         . PS . '..' . DS . 'application' . DS . 'utils'
         . PS . '..' . DS . 'application' . DS . 'views' . DS . 'helpers'
         . PS . '..' . DS . 'application';
ini_set("include_path", $paths);

/home ディレクトリにあるファイルを対象とするようにパス ステートメントを変更するにはどうすればよいですか? 上記のエラーを解決するために行うべき他の調整はありますか?

4

1 に答える 1

0

/usr/share/php/libzend-frameworkphpは Zend Framework Ubuntu パッケージのデフォルトのインストール パスであるため、このアプリケーションはそこにあると想定しているようです。sudo apt-get install zend-frameworkその問題を解決する必要があります。

呼び出しにフルパスを含めるのは悪い習慣だとrequire_once思います.3番目のコード例で定義されているインクルードパスが多すぎます(アプリからだと思いますか?)。

于 2012-08-10T22:07:50.067 に答える