PHP определение иногда не работает на некоторых серверах - PullRequest
1 голос
/ 22 января 2012

Я работаю над веб-приложением PHP с другим разработчиком. У нас есть 3 различных среды:

Конфигурация 1: Windows XAMPP, PHP 5.3.5
Конфигурация 2: LAMP под ключ, PHP 5.3.X (turnkey-lamp-11.2-lucid-x86) - не уверен, какая версия работает из виртуальной коробки на компьютере Mac
Конфигурация 3: рабочий сервер, hostgator совместно использует CentOS, php 5.3.9 fastcgi

Конфигурация 2 иногда не распознает определения, которые обрабатываются в нашем файле settings.php, который является require_once вверху любой страницы, которая его использует. Определения работают нормально на Конфигурации 1 и 3 всегда. В журналах apache не было ничего интересного, кроме ошибок, сгенерированных в результате определения, рассматриваемого как строка.

Я искал некоторое время и не могу найти ничего, что описывает эту проблему. Конфигурация 2 - другой разработчик, и у меня нет доступа к его машине прямо сейчас. Ищете предложения о том, как отследить эту проблему. Я думаю, что мы собираемся попробовать новый экземпляр виртуальной машины, используя модернизированную лампу под ключ, однако мне бы очень хотелось, чтобы это было вызвано.

1 Ответ

2 голосов
/ 25 января 2012

Хорошо, я понял, что происходит ... и, как и ожидалось, это был не PHP или определения.Сообщенные ошибки были точными.Мы используем Eclipse в качестве IDE и Subclipse для SVN.Конфигурация 2 использует виртуальную машину, работающую от Mac, и мы добавили команду eclipse для синхронизации при сохранении файлов.По-видимому, синхронизация происходила только для основного каталога public_html, а не для нашего другого каталога того же уровня, в котором есть включаемый файл с определениями в нем.В конечном итоге мне нужно было посмотреть на действительную виртуальную машину, чтобы заметить, что в этом одном файле она устарела, и в ней отсутствовал оператор define, что приводит к ошибке, но Eclipse показывал ревизию HEAD из SVN, поэтомуЭто было так запутанно, но просто.

Урок. Перед вызовом ремонтника убедитесь, что вы подключили телевизор.

...