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
Форумы портала PHP.SU :: Версия для печати :: как правельно инклюидить файлы
Форумы портала PHP.SU » » Работа с файловой системой и файлами » как правельно инклюидить файлы

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

1. voker - 21 Мая, 2008 - 18:50:54 - перейти к сообщению
Народ как правельно и безопасно Ниндзя инклюидить файлы! Не понял
3. voker - 21 Мая, 2008 - 20:32:25 - перейти к сообщению
А я вот так делаю:
index.php
CODE (text):
скопировать код в буфер обмена
  1.  
  2. <?php
  3. require_once getenv("DOCUMENT_ROOT")."/lib.php/config.php";
  4. require_once"config.inc.php";
  5. require_once "bd.php";
  6. require_once "lib.function.php";
  7. ?>
  8.  

config.php
CODE (text):
скопировать код в буфер обмена
  1.  
  2. <?php
  3. if(!defined("PATH_SEPARATOR"))
  4. defined("PATH_SEPARATOR", getenv("COMSPEC")? ";" : ";");
  5. ini_set("include_path",ini_get("include_path").PATH_SEPARATOR.dirname(__FILE__));
  6. ?>
  7.  


сам не знаю чё такое но работает отмено! Не понял я этот код с какойто книги взял но не помню с какой! Растерялся
4. scuter - 22 Мая, 2008 - 17:48:21 - перейти к сообщению
код конечно прикольный,
я напимер сначало проверяю существует ли файл,
PHP:
скопировать код в буфер обмена
  1.  
  2.         if(file_exists($_SERVER['DOCUMENT_ROOT'.'file_name'))
  3.         {
  4.                 require_once($_SERVER['DOCUMENT_ROOT'.'file_name');
  5.         }
5. voker - 22 Мая, 2008 - 23:03:44 - перейти к сообщению
а как ещё можно инклюидить файлы?
Народ на етом форуме линивый какойто в каждом топики ссылки на мануал сують Однако
так ваще не интересно Не понял

Мож у кого свой супер метод есть, и ему не жалко поделиться им!
6. scuter - 23 Мая, 2008 - 03:58:01 - перейти к сообщению
слухай, а чем тебя этот метод не устраивает,
что может быть особенного в такой вещи как include
в принципе есть только 4 функции которые это делают
Цитата:
include();
include_once();
require();
require_once();

и к тому же что в твоём понимани правильный include,
так сказать обьясни что тебе требуется,
Цитата:
буть проще и народ к тебе потянется.
7. SergeantPEPPER - 23 Мая, 2008 - 09:18:06 - перейти к сообщению
Да вообще если присмотреться к приведенному коду у меня лично создалось впечатление, что всю писанину с суперглобальными переменными можно заменить просто точкой Радость

Т.е. будет аналогично вызываться файл из той же папки (например) - только не с помощью абсолютного пути, а с помощью относительного.
Я например всегда пишу так:
CODE (text):
скопировать код в буфер обмена
  1. include_once ('./common.lib.php');


Точечка здесь означает местонахождение в текущей папке...
8. samulet - 28 Мая, 2011 - 20:17:20 - перейти к сообщению
Пожалуйста, помогите понять, что обозначает эта строка:
voker пишет:
ini_set("include_path",ini_get("include_path").PATH_SEPARATOR.dirname(__FILE__));

Есть где-н её детальный разбор?
Спасибо
9. molchun201 - 28 Мая, 2011 - 20:34:11 - перейти к сообщению
1. ini_set()

2. "include_path" - это шаблон пути

3. ini_get()

4. "include_path" - это шаблон пути

5. .(точка) - конкатенация с

6. PATH_SEPARATOR

7. dirname()

8. dirname(__FILE__) - вернет тебе полный путь к директории, в которой лежит текущий файл
10. samulet - 28 Мая, 2011 - 21:57:40 - перейти к сообщению
molchun201 Спасибо. Это что-то похожее на английский язык. По раздельности слова знакомые, а в целом не понятно.
Ясно, что конструкцией задается шаблон пути, который равен существующему шаблону пути плюс слэш плюс полный путь к директории в которой лежит наш файл (запущенный в данный момент). Я правильно понял?
Что такое "шаблон пути"?
Зачем такая заморочка, если можно прописать как абсолютный путь, так и относительный путь напрямую?
Можно подробней пояснить что такое "include_path"!? Я вывел существующий путь

и удивился тому, что увидел - .:/usr/local/share/pear
Кстати, у меня PATH_SEPARATOR является двоеточием. Зачем между шаблоном пути и директории, где лежит файл разделитель в виде ":"?

Я совсем зеленый, если вопросы совсем глупые отправьте к пояснениям.
Спасибо
11. event - 28 Мая, 2011 - 22:07:29 - перейти к сообщению
Спасибо

 

Powered by ExBB FM 1.0 RC1