2016-03-23 1 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 работает, так что я не думаю, что он не может найти путь.

Я также проверил включенные пути с эхом get_include_path(); и они правильно

Если это может помочь, клиент Ubuntu, сервер Centos, Зенд версия 1.12.17dev

Спасибо за вашу поддержку.

+0

Где находится папка «Рекрут» ? Он находится в строке файла, но не в дереве. Набирает ваше приложение? Похоже, что вам нужно добавить дополнительный «../» на ваш путь. Также может возникнуть проблема с автозагрузчиком, который ищет капитал «R» в пространстве имен/загрузчика классов –

+0

Да, рекрут - это мое приложение. Извините, папка Recruit отсутствовала в дереве, я редактировал. Теперь дерево правильно. В application.ini я объявил пространство имен «Recruit_». – Fabio

+0

попробуйте сбросить '__DIR__', чтобы увидеть, где вы находитесь в своем фактическом дереве файлов. –

ответ

1

Я считаю, что ваша проблема в том, что файловые системы linux/unix чувствительны к регистру. На серверах под управлением Windows вы можете уйти с любым файлом, который вам нравится, поскольку они нечувствительны к регистру. Таким образом ваш запрос включает:

Recruit/Model/DbTable/Volontari.php 

потерпит неудачу, потому что фактический путь должен быть:

Recruit/Model/DBTable/Volontari.php 

Обратите внимание на капитал B в БД ...

+0

Да, в этом была проблема! Имя класса - Recruit_Model_DbTable_Volontari, а путь - Recruit_Model_DBTable_Volontari. Спасибо! – Fabio

Смежные вопросы