Forum Webscript.Ru
Программирование => PHP => Тема начата: Foshvad от 13 Августа 2002, 18:22:38
-
Наверняка это как-то объясняется, но я ума не приложу как!
1. Создаем файл index.php в котором пишем следующее:
chdir(\'./index\');
include(a.php\');
?>
2. создаем в этой же папке файл a.php в котором пишем: это файл a.php
3. создаем в этой же папке директорию index в которую помещаем файл a.php в котором пишем: это файл index/a.php
теперь запускаем index.php
видим:
это файл index/a.body
[color=ff0000]Внимание фокус![/color]
удаляем файл a.php из папки index и еще раз запускаем index.php
видим:
это файл a.body !!!
скрипт index.php не менялся, chdir во второй раз никто не трогал, а PHP нашел другой include с тем же именем и благополучно вставил его.
Что же это такое?! Неужели так и надо?
-
У тебя в include_path точка стоит? Вот скрипт и ищет файл a.php в каталоге в котором текущий скрипт находится
-
Во-первых если убрать ./ абсолютно ничего не поменяется (проверял - под виндами так точно)
А во вторых все равно выходит, что скприт ищем include в двух папках....
-
Во-первых если убрать ./ абсолютно ничего не поменяется (проверял - под виндами так точно)
А во вторых все равно выходит, что скприт ищем include в двух папках....
Еще раз прочитай что я написал. Особенно обрати внимание на слово include_path Это - переменная в PHP которая в php.ini у тебя установлена.
-
у меня эта переменная в php.ini закомментирована (как и была по умолчанию)
-
echo ini_get("include_path");
что выводит?
-
.;c:\\php4\\pear
:)
-
.;c:\\php4\\pear
вот про точку (которая самая первая) я тебе и говорил
-
Хм... ну дык и что?
Разве команда incude запрашивает не конкретный файл из конкретной директории?
Точке ведь, вроде, означает просто текущею директорию
-
абсолютный путь укажи и не мучайся, или настройки меняй:)
-
Foshvad
Если путь абсолютный то PHP просто подключает файл. Если относительный, то PHP ищет файл относительно путей прописанных в include_path в указаном порядке
Разве команда incude запрашивает не конкретный файл из конкретной директории?
угу. А если файл не существует то используется список из include_path
-
угу. А если файл не существует то используется список из include_path
Век живи - век учись....