Tatatelos
@Tatatelos

PHP: Как сделать include в нужном месте через функцию?

Дано: директория с множеством файлов .php
Задача: Нужно подключать файлы когда это необходимо, но include('/cat1/cat2/file_name.php'); - это долго и не красиво.
Что хочется:
inc('file_name');

function inc($file) {
    include('/cat1/cat2/'.$file.'.php')
}

Но в таком случае код из файла выполняется в функции, а нужно в том месте от куда вызвали функцию. Есть какие-нибудь способы реализовать необходимое?
  • Вопрос задан
  • 378 просмотров
Решения вопроса 2
xmoonlight
@xmoonlight
https://sitecoder.blogspot.com
Вы путь к файлу генерите функцией, а не запихивайте include внутрь функции...
//full path to file for include
function fp($file) {
     return '/cat1/cat2/'.$file.'.php';
}
include(fp($file));
Ответ написан
@allexp
web-developer
Можно немного сократить путь, если добавить include_path

set_include_path(get_include_path() . PATH_SEPARATOR . '/cat1/cat2/');

include 'file.php';
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 2
Ashlst
@Ashlst
Фанат эстетики и красивых решений.
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы