Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: get_include_path()

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Описание: get_include_path()
puncake
Отправлено: 25 Июня, 2015 - 13:01:17
Post Id



Новичок


Покинул форум
Сообщений всего: 28
Дата рег-ции: Июнь 2015  


Помог: 0 раз(а)




Подскажите, пожалуйста, почему путь отображается вот так:
.;c:/openserver/modules/php/PHP-5.4;c:/openserver/modules/php/PHP-5.4/PEAR/pear
Он вроде как частично дублируется. Разве это нормально? Спасибо.
 
 Top
Мелкий Супермодератор
Отправлено: 25 Июня, 2015 - 13:10:08
Post Id



Активный участник


Покинул форум
Сообщений всего: 11926
Дата рег-ции: Июль 2009  
Откуда: Россия, Санкт-Петербург


Помог: 618 раз(а)




include_path не рекурсивный.
c:/openserver/modules/php/PHP-5.4 и c:/openserver/modules/php/PHP-5.4/PEAR/pear - две разные директории


-----
PostgreSQL DBA
 
 Top
puncake
Отправлено: 25 Июня, 2015 - 13:26:42
Post Id



Новичок


Покинул форум
Сообщений всего: 28
Дата рег-ции: Июнь 2015  


Помог: 0 раз(а)




Мелкий пишет:
include_path не рекурсивный.

Если можно, объясните на человеко-понятном языке. Пожалуйста.
Мелкий пишет:

c:/openserver/modules/php/PHP-5.4 и c:/openserver/modules/php/PHP-5.4/PEAR/pear - две разные директории

Это ясно. Вопрос был - почему так отображается путь при выведении на экран

Файлы-то не в двух директориях хранятся.
При подключении контроллера, модели и библиотеки:
CODE (htmlphp):
скопировать код в буфер обмена
  1.                 .PATH_SEPARATOR.CONTROLLER
  2.                 .PATH_SEPARATOR.MODEL
  3.                 .PATH_SEPARATOR.LIB
  4.                 );

выводится вот такой путь:
.;c:/openserver/modules/php/PHP-5.4;c:/openserver/modules/php/PHP-5.4/PEAR/pear;core/controller;core/model;lib
Нужно где-то что-то перенастроить, а вот где и что - не знаю.
 
 Top
Мелкий Супермодератор
Отправлено: 25 Июня, 2015 - 13:37:44
Post Id



Активный участник


Покинул форум
Сообщений всего: 11926
Дата рег-ции: Июль 2009  
Откуда: Россия, Санкт-Петербург


Помог: 618 раз(а)




puncake пишет:
Если можно, объясните на человеко-понятном языке. Пожалуйста.

Путь /foo/ не включает в себя путь /foo/bar/
Т.е. настройка не использует рекурсивный обход путей.

puncake пишет:
Файлы-то не в двух директориях хранятся.

При чём тут где хранятся файлы?
Настройка определяет в каких директориях и в каком порядке производить поиск.
Упрощённо работает так:
PHP:
скопировать код в буфер обмена
  1. $sNeedFilename = 'example.php';
  2. $aPaths = array(
  3.     '.',
  4.     '/foo/',
  5.     '/foo/bar/',
  6. );
  7. foreach ($aPaths as $path) {
  8.     if (file_exists($path . $sNeedFilename)) {
  9.         include $path . $sNeedFilename;
  10.         break;
  11.     }
  12. }


Что вам не нравится в полученном наборе путей я не понимаю. Как, впрочем, не понимаю и зачем использовать include_path вместо человеческого spl_autoload_register


-----
PostgreSQL DBA
 
 Top
puncake
Отправлено: 25 Июня, 2015 - 13:47:14
Post Id



Новичок


Покинул форум
Сообщений всего: 28
Дата рег-ции: Июнь 2015  


Помог: 0 раз(а)




Спасибо за пояснения.
Мелкий пишет:
Что вам не нравится в полученном наборе путей я не понимаю. Как, впрочем, не понимаю и зачем использовать include_path вместо человеческого spl_autoload_register

Теперь мне многое ясно. Я купила курс по ООП, но там автор не особо вдается в объяснения. Поэтому приходится искать ответы на сторонних ресурсах. Спасибо Вам еще раз.
 
 Top
DeepVarvar Супермодератор
Отправлено: 25 Июня, 2015 - 13:59:12
Post Id



Активный участник


Покинул форум
Сообщений всего: 10377
Дата рег-ции: Дек. 2008  
Откуда: Альфа Центавра


Помог: 353 раз(а)




puncake пишет:
Я купила курс по ООП

puncake пишет:
;c:/openserver

puncake пишет:
автор не особо вдается в объяснения

puncake пишет:
Теперь мне многое ясно

Надеюсь так же стало ясно что нужно сдать курс обратно и вернуть потраченые деньги.
Лучше сюда (или на другой ресурс приходи) спрашивать, чем деньги в трубу сливать.
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Работа с файловой системой и файлами »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB