Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > PHP: Общие вопросы > set_include_path ?


Автор: gibbzy 22.8.2008, 20:39
Читаю <a href="http://habrahabr.ru/blogs/php/31168/">статью</a> 
про Zend Framework 
наткнулся там на такие строки:
Код

set_include_path('.'.PATH_SEPARATOR . './library'
    .PATH_SEPARATOR.'./application/models/'
    .PATH_SEPARATOR.get_include_path());


здесь как я понял задаются несколько путей для инклуда.
однако у меня не хочет работать. 
тоесть файлы не инклудит.

2 раза как я понял эту функцию употреблять нельзя 

потому используют некий PATH_SEPARATOR

на 
Код

echo get_include_path();

выводится следующее: 
.;./library;./application/models/;.;/usr/local/php5/PEAR


обьясните пожалуйста как в set_include_path записать несколько путей и что такое PATH_SEPARATOR
заранее благодарен

Автор: bobik02 22.8.2008, 21:03
gibbzy, Хорошо бы было читать официальную документацию ! Там же все описано и расписано.

PATH_SEPARATOR - константа(разделитель между несколькими путями).  
Например по аналогии с никсами PATH, есть некая команда пущай lsusb , когда ты ее запускаешь  это дело ищется в нескольких путях, ... Если знаком с никсами выполни > echo $PATH и увилиш несколько путей и разделителей вроде такого
/bin:/sbin:/usr/local/bin  и т.к. точно так же и тут, где двоеточие это разделитель между путями в никсах.
в то время на винде другие разделители.


Автор: gibbzy 22.8.2008, 21:25
В английском не силён ( 
а на русском не смог найти 
но вообщем то понял 

Автор: Bastet 23.8.2008, 21:00
Эту функцию можно употреблять сколько угодно раз.
Код

if (!defined('PATH_SEPARATOR')) define("PATH_SEPARATOR", getenv("COMSPEC") ? ";" : ":");

ini_set("include_path", ini_get("include_path").PATH_SEPARATOR.'/lib');
ini_set("include_path", ini_get("include_path").PATH_SEPARATOR.'/lib/components');
ini_set("include_path", ini_get("include_path").PATH_SEPARATOR.'/templates');

Понятнее и должно корректно работать.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)