Маэстро, за что так бедного меня жестоко...Фанат написал(а):И если один идиотский форум с этим работает, то это не повод пихать как рекомендацию всем подряд.
Убери, кстати, его из подписи. еще не хватало этот хлам здесь рекламировать.
... Я вообще не настаивал ни на каких рекомендациях, насчет dirname(__FILE__), чайник я еще... Я просто привел один из возможных рабочих вариантов. Насколько он лучше/хуже других способов - я не знаю, и ничего такого не утверждал. 
Научись сначала отличать абсолютный путь ("Красных Комиссаров, 16") от относительного ("налево два квартала за углом во дворе").Фанат, воу, воу, палехче. __DIR__ как раз-таки даст
var_dump(include "2.php");
var_dump(include dirname(__FILE__) . "/2.php");
var_dump(include "./2.php");
int(1)
int(1)
int(1)
int(1)
int(1)
int(false)
Если в этом скрипте какие-то проблемы с инклюдом, то пхп разразится потоком нецензурной брани АКА сообщений об ошибке.Кто нибудь может объяснить такое поведение:
Ошибка была, оно и понятно.Если в этом скрипте какие-то проблемы с инклюдом, то пхп разразится потоком нецензурной брани АКА сообщений об ошибке.
Судить о проблемах инклюда следует по сообщениям об ошибках инклюда, а не путем наблюдения за непрямыми следствиями.
Причем тут ошибка? Я просто сказал:вот это жесть из жести, конечно. "ошибка была". Что за ошибка, чем вызвана, в чем её смысл - нас не интересует.
всё в точности как в той старой байке
Я к различию инклуда 2.php и ./2.php.
В первом случае инклуд происход от директории со скриптом, а во втором от текущей директории.
Чтобы не было такого гемора как раз таки лучше и ставить dirname(__FILE__).
Не мое было предложение, но мне понравилось (код ниже).Фанат написал(а):Если вспомнить про топикстартера, то он спрашивал конструкцию, которая работает "из любой папки".
define('SITE_ROOT', dirname(__FILE__).'/');
define('SITE_ROOT1', $_SERVER['DOCUMENT_ROOT'].'/');
define('SITE_ROOT2', dirname(__FILE__).'/');
echo 'site root 1: '.SITE_ROOT1;
echo '<br> site root 2: '.SITE_ROOT2;
require_once('articles/file.php');
...то появится проблема, как обратиться к config.php из любой папки.Если в корне сайта расположить config.php
по моим воспоминания (php 4), включение файла через include_path ну очень сильно проигрывало в скорости простому поиску файла набором file_exists. Ситуация удивительна, так как include_path, по идее должен делать то же самое, только на С.Подключаете файл относительно любого из путей, указанных в include-path.
если будем мыслить такими шаблонами то html будет ассемблеромСитуация удивительна, так как include_path, по идее должен делать то же самое, только на С.
с возвращением! как там дела на луне?по моим воспоминания (php 4)
эээ, а автолоад работает на радуге и какашках единорогов?А чо прикалываться-то? Я с 4-ки, как только мне открыли глаза на автолод, не пользуюсь инклюдами. Я ж не в курсах, они таки исправили с той поры торможение с поиском файлов по include_path или руки разработчиков занимают стабильное положение?