подключаю в нём файл: require_once "cms/sitev.php"
в каталоге cms находяться файлы sitev.php и blog.php
в файле sitev.php подключаю файл require_once "blog.php",
в котором описан класс CBlog
если эти два файла одинаковые и называются blog, то класс CBlog считается не описанным,
если переименовываем один, например, в blog1.php, то всё работает...
что делать?
Спустя 13 часов, 24 минуты, 10 секунд (15.02.2009 - 06:08) sitev написал(а):
нашёл выход... пришлось сделать вот так...
require_once dirname(__FILE__)."/blog.php";
извращение...
похоже на ошибку разработчиков PHP
require_once dirname(__FILE__)."/blog.php";
извращение...
похоже на ошибку разработчиков PHP
Спустя 1 час, 2 минуты, 5 секунд (15.02.2009 - 07:10) kirik написал(а):
Цитата (sitev @ 14.02.2009 - 22:08) |
похоже на ошибку разработчиков PHP biggrin.gif |
Похоже на ошибку указания пути до подключаемого файла
Всегда нужно указывать полный путь до файла во избежание подобных недоразумений.
PHP |
$site_root = '/var/www/site.com'; // корневая папка сайта |
Спустя 2 часа, 12 минут, 13 секунд (15.02.2009 - 09:22) sitev написал(а):
что-то я не помню, чтоб такое в с++ было...
уж если разработчики PHP стырили 90% плюсового синтаксиса, могли бы и с инклудами что-нить подобное сделать...
если делать использовать $site_root, как у тебя, то это не очень гибко, вдруг cms я хочу засунуть в какую-нить другую папку.... лучше уж тогда применить dirname(__FILE__), как у меня...
уж если разработчики PHP стырили 90% плюсового синтаксиса, могли бы и с инклудами что-нить подобное сделать...
если делать использовать $site_root, как у тебя, то это не очень гибко, вдруг cms я хочу засунуть в какую-нить другую папку.... лучше уж тогда применить dirname(__FILE__), как у меня...
Спустя 1 час, 34 минуты, 46 секунд (15.02.2009 - 10:57) kirik написал(а):
Цитата (sitev @ 15.02.2009 - 01:22) |
лучше уж тогда применить dirname(__FILE__), как у меня... |
Без проблем
Цитата (sitev @ 15.02.2009 - 01:22) |
если делать использовать $site_root, как у тебя, то это не очень гибко, вдруг cms я хочу засунуть в какую-нить другую папку.... |
На это существуют config файлы в которых все заранее описывается при установке скрипта.
Спустя 6 часов, 45 минут, 42 секунды (15.02.2009 - 17:42) sitev написал(а):
у меня эта плёвая проблема даже вылилась в большое пространное рассуждение в моём блоге
http://sitev.ru/index.php?wnd=blog.php
http://sitev.ru/index.php?wnd=blog.php
Спустя 4 часа, 6 минут, 21 секунда (15.02.2009 - 21:49) kirik написал(а):
Цитата |
Files for including are first looked for in each include_path entry relative to the current working directory, and then in the directory of current script. E.g. if your include_path is libraries, current working directory is /www/, you included include/a.php and there is include "b.php" in that file, b.php is first looked in /www/libraries/ and then in /www/include/. If filename begins with ./ or ../, it is looked only in the current working directory. |