Forum Webscript.Ru

Программирование => PHP => Тема начата: volod от 18 Февраля 2005, 10:04:11

Название: Как подключить PEAR
Отправлено: volod от 18 Февраля 2005, 10:04:11
Поставил себе PEAR. Под Win ХР.
Все прошло хорошо, гладко.
Скрипты мои лежат здесь: "c:/webdev/www/htdocs"
PERA поставлен сюда: "c:/webdev/www/pear"
Может кто сказать, КАКОЙ ПУТЬ в инклуде мне нужно прописать с самого начала скрипта, чтобы заюзать кой-то пэкэдж. DB, допустим.
А то сейчас через такую.. попу инклуды делаю... :insane:
Название: Как подключить PEAR
Отправлено: Макс от 18 Февраля 2005, 12:56:20
если установил все правильно (если include_path верно установлен)
то просто  require_once(\'DB.php\');
Название: Как подключить PEAR
Отправлено: volod от 18 Февраля 2005, 14:25:16
То есть должно быть что-то типа
[?
include("DB.php");
$db = DB::connect("mysql:// .....");
$db->....
?]
да?
А откуда скрипт знает, что этот инклуд_пас нужно использовать?
И вообще, где он прописывается?
Название: Как подключить PEAR
Отправлено: Макс от 18 Февраля 2005, 14:37:34
Цитировать
volod:
А откуда скрипт знает, что этот инклуд_пас нужно использовать?

а он ничего не знает. Он всегда его использует.
Просто обычно include_path = "."

Прописать его можно :
1. php.ini
2. httpd.conf (mod_php only)
3. .htaccess (mod_php only)
4. [p]ini_set[/p], [p]set_include_path[/p]
Название: Как подключить PEAR
Отправлено: Макс от 18 Февраля 2005, 14:39:51
Цитировать
volod:
[? include("DB.php"); $db = DB::connect("mysql:// ....."); $db->.... ?] да?

все верно, только для подключения таких файлов лучше использовать [p]include_once[/p]/[p]require_once[/p]
Название: Как подключить PEAR
Отправлено: volod от 18 Февраля 2005, 15:37:48
Не, не вышло.
Вот вход:
[?
include_once("DB.php");
$db = DB::connect("mysql://root:Root@localhost/ms");
var_dump($db);
?]
Вот выход:
Warning: main(DB.php): failed to open stream: No such file or directory in c:\\webdev\\www\\htdocs\\test\\pear_blya.php on line 3

Warning: main(): Failed opening \'DB.php\' for inclusion (include_path=\'.;c:\\php4\\pear\') in c:\\webdev\\www\\htdocs\\test\\pear_blya.php on line 3

Fatal error: Undefined class name \'db\' in c:\\webdev\\www\\htdocs\\test\\pear_blya.php on line 4

А в пхп.ини инклуд_пас раскоментирован и прописан так:
include_path = ".;c:\\php\\includes;c:\\php\\PEAR\\pear"

Что за фигня? Может, все-таки прямо в скрипте нужно прописывать какой-нибудь INCLUDE_PATH."DB.php"...
?
Название: Как подключить PEAR
Отправлено: volod от 18 Февраля 2005, 15:49:19
Единственное место в ПХП, где у меня инклуд_пас прописан как ".;c:/php4/pear" (которого и нету то на самом деле) -- php4ts.dll.
Кароче, блин, неужели нужно столько вот изводится, чтоб эту финовину подключить?!
С ума сойти...
Название: Как подключить PEAR
Отправлено: Макс от 18 Февраля 2005, 15:53:37
Цитировать
volod:
А в пхп.ини инклуд_пас раскоментирован и прописан так: include_path = ".;c:\\php\\includes;c:\\php\\PEAR\\pear"

Цитировать
volod:
PERA поставлен сюда: "c:/webdev/www/pear"

Цитировать
Макс:
если include_path верно установлен

намек ясен ?
Название: Как подключить PEAR
Отправлено: Макс от 18 Февраля 2005, 15:58:44
Цитировать
volod:
Кароче, блин, неужели нужно столько вот изводится, чтоб эту финовину подключить?!

чтобы все это установить надо всего лишь одну строчку правильно прописать.
Всего-то :)
Название: Как подключить PEAR
Отправлено: volod от 18 Февраля 2005, 16:23:14
Н-да, строчка-то одна, но править ее нуно непонятно где (ой-ой, ну вот только не надо в меня гнилыми яйками кидать, не надо).
Каррроче. Вопрос решился, как всегда, тупо и прямо. Заюзал set_include_path(), будто бы все работает.
Ну эт нармальна? А то мало там что, вылезет вдруг в разгаре отладки кой-то глючище из-за этой хренотени, попогоняешь его потом...
Название: Как подключить PEAR
Отправлено: Макс от 18 Февраля 2005, 16:32:08
Это нормально. Но я считаю более удобным .htaccess