2016-03-23 16 views
0

この問題は私をナットにしています。私はすでに提出されている同様の問題を知っているが、何の解決策は、私がZend include_once(myphpfile):ストリームを開くことに失敗しました:そのようなファイルまたはディレクトリはありません。

私はこのエラーを取得していますのために働いていない:

Warning: include_once(): Failed opening 'Recruit/Model/DbTable/Volontari.php' for inclusion (include_path='/var/www/html/fabio/recruit/application/../library:/var/www/html/fabio/recruit/library:.:/usr/share/pear:/usr/share/php') in /usr/share/php/Zend/Loader.php

しかし、実際にファイルがサーバー上に存在しています。これは私のフォルダツリーの一部です

source 
    |__application 
     |_ .... 
    |__library 
     |__Recruit 
      |__Forms 
      | |__VolontariCreate.php 
      |__Model 
       |__DBTable 
         |__Volontari.php 

フォームVolontariCreate.phpが動作するので、私はパスが見つからないと思いません。

また、echo get_include_path();を含むインクルードパスもチェックしました。 と、それは助けることができるならば、彼らは、クライアントがUbuntuのある、サーバはCentOSにある、Zendのバージョン

正しいですが、あなたのサポートのための1.12.17dev

おかげです。

+0

?それはファイルの文字列にありますが、ツリーにはありません。あなたのアプリケーションを募集していますか?パスに「../」を追加する必要があるようです。また、ネームスペース/クラスローダーで大文字の 'R'を探しているオートローダーのケースの問題 –

+0

はい、採用は私のアプリケーションです。申し訳ありませんが、リクルートフォルダがツリーに表示されず、編集しました。今、ツリーは正しいです。私はapplication.iniで名前空間 "Recruit_"を宣言しました。 – Fabio

+0

'__DIR__'をダンプして、実際のファイルツリーのどこにいるのか確認してください。 –

答えて

1

あなたの問題は、Linux/UNIXファイルシステムでは大文字と小文字が区別されることです。 Windowsを実行しているサーバーでは、大文字と小文字を区別しないので、あなたが気に入っているファイルの大文字と小文字を区別することができます。そのように、あなたの要求が含まれるように:実際のパスがなければなりませんので

Recruit/Model/DbTable/Volontari.php 

は失敗します。

Recruit/Model/DBTable/Volontari.php 

お知らせDBにおける資本B ...「リクルート」フォルダが配置されている

+0

はい、問題でした!クラス名はRecruit_Model_DbTable_Volontariで、パスはRecruit_Model_DBTable_Volontariです。ありがとうございました! – Fabio

関連する問題

 関連する問題