IPB

Здравствуйте, гость ( Вход | Регистрация )

Важные объявления

 
Ответить в данную темуНачать новую тему
> подключение функций в PHP, интересует как кто подключает функции...
nick
сообщение 26.5.2008, 10:00    [ Вставить ник в форму быстрого ответа ]
Сообщение #1


Фанат
****

Группа: Опытные
Сообщений: 108
Регистрация: 12.10.2007
ICQ: 205513559
Пользователь №: 635
Спасибо сказали: 0 раз(а)

Дистрибутив:
Open SuSe 11.1



Репутация: 0


Интересует такой вопрос: как кто подключает функции в PHP????
а именнно: include или requere
больше всего интересует как все это организовано в проекте, разбитом на большое количество каталогов.
Пример:
есть папка includes где лежат функции, как мне получить доступ к функциям из любого места проекта???
например из глубин папки: web -> dir -> admin
можно с помощью суперглобального массива $_SERVER,
или же привязать жестко к пути: include_once('/srv/www/htdocs/includes') - указав точное местонахождение каталога....
копался насчет этого в инете.... однозначного ответа не нашел..
что думают профи на этом форуме??!!!!! есть ли стандартные решения? или не стандартные? универсальные?
хотелось бы послушать... (IMG:http://forum.linux.lg.ua/style_emoticons/default/smile.gif)
Перейти в начало страницы
Вставить ник
+Цитировать сообщение
Зарегистрируйтесь, чтобы скрыть этот рекламный блок.
dip56245
сообщение 26.5.2008, 11:24    [ Вставить ник в форму быстрого ответа ]
Сообщение #2


Programmer
****

Группа: Старейшины
Сообщений: 481
Регистрация: 28.9.2005
ICQ: 82591163
Пользователь №: 2
Спасибо сказали: 2 раз(а)

Дистрибутив:
SuSE
Jabber ID:
[email protected]



Репутация: 2


в .htaccess пишешь:
php_value include_path /home/user/www.ru/htdocs/include
тогда когда пишешь в php include будет подключаться из этой папки.
Перейти в начало страницы
Вставить ник
+Цитировать сообщение
nick
сообщение 26.5.2008, 14:05    [ Вставить ник в форму быстрого ответа ]
Сообщение #3


Фанат
****

Группа: Опытные
Сообщений: 108
Регистрация: 12.10.2007
ICQ: 205513559
Пользователь №: 635
Спасибо сказали: 0 раз(а)

Дистрибутив:
Open SuSe 11.1



Репутация: 0


Цитата(dip56245 @ May 26 2008, 12:24 ) *
в .htaccess пишешь:
php_value include_path /home/user/www.ru/htdocs/include
тогда когда пишешь в php include будет подключаться из этой папки.


спасибо!!!
Перейти в начало страницы
Вставить ник
+Цитировать сообщение
nick
сообщение 27.5.2008, 7:32    [ Вставить ник в форму быстрого ответа ]
Сообщение #4


Фанат
****

Группа: Опытные
Сообщений: 108
Регистрация: 12.10.2007
ICQ: 205513559
Пользователь №: 635
Спасибо сказали: 0 раз(а)

Дистрибутив:
Open SuSe 11.1



Репутация: 0


Цитата(dip56245 @ May 26 2008, 12:24 ) *
в .htaccess пишешь:
php_value include_path /home/user/www.ru/htdocs/include
тогда когда пишешь в php include будет подключаться из этой папки.


есть замечание....
.htaccess не дает гибкости, он жестко привязывает путь!!!! а что если пользователь поставит в папку /home/nn/public_html
другой пользователь поставит на виртуал хост и будет другой путь!
каждый раз менять ручками файл .htaccess????
нужны универсальные средства...
к примеру как это реализовано в CMS DRUPAL??? или в других... там ничего менять не надо, система сама находит библиотеки...
копался в друпале, нашел такой код:

function conf_path($require_settings = TRUE, $reset = FALSE) {
static $conf = '';

if ($conf && !$reset) {
return $conf;
}

$confdir = 'sites';
$uri = explode('/', $_SERVER['SCRIPT_NAME'] ? $_SERVER['SCRIPT_NAME'] : $_SERVER['SCRIPT_FILENAME']);
$server = explode('.', implode('.', array_reverse(explode(':', rtrim($_SERVER['HTTP_HOST'], '.')))));
for ($i = count($uri) - 1; $i > 0; $i--) {
for ($j = count($server); $j > 0; $j--) {
$dir = implode('.', array_slice($server, -$j)) . implode('.', array_slice($uri, 0, $i));
if (file_exists("$confdir/$dir/settings.php") || (!$require_settings && file_exists("$confdir/$dir"))) {
$conf = "$confdir/$dir";
return $conf;
}
}
}
$conf = "$confdir/default";
return $conf;
}


честно не понял как функция работает.... (IMG:http://forum.linux.lg.ua/style_emoticons/default/sad.gif)
может кто поделится наблюдениями...
Перейти в начало страницы
Вставить ник
+Цитировать сообщение
dip56245
сообщение 27.5.2008, 11:54    [ Вставить ник в форму быстрого ответа ]
Сообщение #5


Programmer
****

Группа: Старейшины
Сообщений: 481
Регистрация: 28.9.2005
ICQ: 82591163
Пользователь №: 2
Спасибо сказали: 2 раз(а)

Дистрибутив:
SuSE
Jabber ID:
[email protected]



Репутация: 2


из наблюдений, всегда на любом хостинге создаешь свой .htaccess под конкретного хостера... у некоторых gloabl off надо поставить, у других ысчо чего нить, поэтому лично у мню проблем нету с этим.
и кстати во всех системах такого рода - есть конфигурация в начале, которая пытается найти путь физически на диске куда её ставят, а затем... ) ну в общем ты понял.
Перейти в начало страницы
Вставить ник
+Цитировать сообщение
nick
сообщение 27.5.2008, 14:59    [ Вставить ник в форму быстрого ответа ]
Сообщение #6


Фанат
****

Группа: Опытные
Сообщений: 108
Регистрация: 12.10.2007
ICQ: 205513559
Пользователь №: 635
Спасибо сказали: 0 раз(а)

Дистрибутив:
Open SuSe 11.1



Репутация: 0


не совсем пойму............ так как же быть????
писать конфигуратор? как писать........... (IMG:http://forum.linux.lg.ua/style_emoticons/default/sad.gif)
чет окончательно запутался....
здесь тоже поднимали этот вопрос.. но ответа однозначного небыло...
Перейти в начало страницы
Вставить ник
+Цитировать сообщение
dip56245
сообщение 28.5.2008, 7:47    [ Вставить ник в форму быстрого ответа ]
Сообщение #7


Programmer
****

Группа: Старейшины
Сообщений: 481
Регистрация: 28.9.2005
ICQ: 82591163
Пользователь №: 2
Спасибо сказали: 2 раз(а)

Дистрибутив:
SuSE
Jabber ID:
[email protected]



Репутация: 2


ну смотря что ты хочешь...
при определенных обстоятельствах лучше использовать один способ, при других - другой....
т.е. если сайт ты делаешь и поддерживаешь то иногда лучше в .htaccess, если отдаешь аля ЦМС готовую - то без конфигуратора никуда (кстати буржуи последнее время не принимают сайты без "конфигуратора")
Перейти в начало страницы
Вставить ник
+Цитировать сообщение
nick
сообщение 28.5.2008, 8:39    [ Вставить ник в форму быстрого ответа ]
Сообщение #8


Фанат
****

Группа: Опытные
Сообщений: 108
Регистрация: 12.10.2007
ICQ: 205513559
Пользователь №: 635
Спасибо сказали: 0 раз(а)

Дистрибутив:
Open SuSe 11.1



Репутация: 0


ночь просидел с этой .htaccess............ (IMG:http://forum.linux.lg.ua/style_emoticons/default/sad.gif)
создаю файл .htaccess с php_value include_path /home/user/www.ru/htdocs/include
смотрю через браузер.. блин.. папка пропала.. не показывает.. удаляю файл, все отлично... блин..
что может быть? в конфигах апач этот файл прописан..
Перейти в начало страницы
Вставить ник
+Цитировать сообщение
dip56245
сообщение 29.5.2008, 8:46    [ Вставить ник в форму быстрого ответа ]
Сообщение #9


Programmer
****

Группа: Старейшины
Сообщений: 481
Регистрация: 28.9.2005
ICQ: 82591163
Пользователь №: 2
Спасибо сказали: 2 раз(а)

Дистрибутив:
SuSE
Jabber ID:
[email protected]



Репутация: 2


Order Deny,Allow
Allow from All
добавь
Перейти в начало страницы
Вставить ник
+Цитировать сообщение
nick
сообщение 30.5.2008, 7:06    [ Вставить ник в форму быстрого ответа ]
Сообщение #10


Фанат
****

Группа: Опытные
Сообщений: 108
Регистрация: 12.10.2007
ICQ: 205513559
Пользователь №: 635
Спасибо сказали: 0 раз(а)

Дистрибутив:
Open SuSe 11.1



Репутация: 0


Все отлично получилось настроить... и виртуальные хосты и управление через .htaccess
Стоит Апач 2, надо было изменить настройки сервера:
в файле /etc/apache2/default-server.conf есть такая Директива AllowOverride, так вот было none,
я поставил all и все работает!!! ет Директива управляет возможностями .htaccess, кому интересно могут почитать в инете...
потом я поправил и конфиги виртуальных хостов..
всем спасибо! большой респект dip56245 (IMG:http://forum.linux.lg.ua/style_emoticons/default/smile.gif)
Перейти в начало страницы
Вставить ник
+Цитировать сообщение

Ответить в данную темуНачать новую тему
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



RSS Текстовая версия Сейчас: 21.9.2019, 11:51    


BonAppetit - кулинарные авторские фоторецепты  ITO-info