2011-01-27 3 views
0

В моей системе Windows XP require_once('/stuff.php'); работает нормально, но на сервере Linux он говорит, что файл не найден, пока я не изменил его на require_once('stuff.php');. Есть ли какая-то настройка, которую я могу изменить, чтобы эта работа работала над linux?require_once работает на окнах, но не на linux

+0

вы должны использовать ** ** надлежащий путь к файлу. ''/stuff.php'' является ненадлежащим. Получите книгу об основах компьютера и узнайте, какой путь –

+0

@Col. Шрапнель Я слишком занят программированием, чтобы узнать о компьютерах. – Matt

ответ

1

Является ли «stuff.php» в том же каталоге, что и файл, содержащий include/require?

Если да, то require_once('stuff.php') должен работать в обеих системах. В противном случае, другие ответы здесь, вероятно, будут более полезными.

Для справки: http://www.php.net/manual/en/function.include.php

1

Использование /file на linux заставит его посмотреть в корневой папке (сравните с C:\), попробуйте использовать ./stuff.php.

-1

Antoher Идея заключается в том, чтобы использовать $ корневую переменную, в которой хранятся корень проекта («/» для окон и «» для линкса)

3

Вы, наверное, хотите:

require_once(dirname(__FILE__) . DIRECTORY_SEPARATOR . 'stuff.php'); 

dirname(__FILE__) возвратит текущей директории, затем добавьте отдельный разделитель ОС и имя файла.

-1

Используйте РНР DIRECTORY_SEPARATOR константы для слеш.

как

$path . DIRECTORY_SEPARATOR . 'file.php'

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