Неустранимая ошибка: require_once(): не удалось открыть требуемый файл.php

У меня есть сайт, который работает на моей локальной машине. Эти строки в порядке, когда я на OSX. Пока на windows выдает ошибки:

set_include_path ( get_include_path () . ':' . dirname ( __FILE__ ) . '/../lib/propel/runtime/lib/' );
set_include_path ( get_include_path () . ':' . dirname ( __FILE__ ) . '/../lib/smarty/libs/' );
set_include_path ( get_include_path () . ':' . dirname ( __FILE__ ) . '/../classes/' );
set_include_path ( get_include_path () . ':' . dirname ( __FILE__ ) . '/../classes/ORM/' );

Это ошибка

Неустранимая ошибка: require_once(): не удалось открыть обязательный файл 'Propel.php' (include_path='.:C:/wamp/www/emporio-rossi/conf/:C:\wamp\www\emporio-rossi\wapp/../lib/propel/runtime/lib/:C:\wamp\www\emporio-rossi\wapp/../lib/smarty/libs/:C:\wamp\www\emporio-rossi\wapp/../classes/:C:\wamp\www\emporio-rossi\wapp/../classes/ORM/') в C:\wamp\www\emporio-rossi\wapp\conf.inc.php в строке 33

Propel.php находится в первом URI (set_include_path ( get_include_path () . ':' . dirname ( __FILE__ ) . '/../lib/propel/runtime/lib/' );)

1 ответ

Решение

Windows использует ; в качестве разделителя пути, тогда как nix (включая OSX) использует :,

Ответ заключается в использовании PATH_SEPARATOR постоянная:

set_include_path ( get_include_path () . PATH_SEPARATOR . dirname ( __FILE__ ) . '/../lib/propel/runtime/lib/' );

Из документов:

Используя константу PATH_SEPARATOR, можно расширить путь включения независимо от операционной системы.

Другие вопросы по тегам