Задать вопрос
alex4answ
@alex4answ

Область видимости переменной в require?

Добрый день, напоролся на такую проблему:

Определяю переменную, она везде доступна кроме шаблонов, которые я подключил статическим методом.

Например:
FILE 1.php:
$page = 'название';
require( FILE_2.php );
-------------------
FILE 2.php:
..html..
<?=page;?> - все ок, выводит
..html ..
<? require_once(FILE_3.php); ?>
----------------------
FILE 3.php:
<?=$page;?> -- доступна все ок

А вот теперь самое интересное:
class IncludeComponent{
    public static function inc($path){
           require_once($path);
    }
}

FILE 1.php:
$page = 'название';
IncludeComponent::inc( FILE_2.php );
-------------------
FILE 2.php:
..html..
<?=page;?> - недоступна, ЕРОР


Как с этим бороться и в чем причина, я не совсем понимаю, буду очень благодарен за помощь
  • Вопрос задан
  • 141 просмотр
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Skillfactory
    Профессия Fullstack веб-разработчик на JavaScript и PHP
    20 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
Решения вопроса 2
DevMan
@DevMan
Ответ написан
Комментировать
@DanKud
class IncludeComponent{
    public static function inc($path){
           global $page;
           require_once($path);
    }
}
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы
FoodSoul Калининград
от 180 000 до 250 000 ₽
IT-Spirit Москва
от 230 000 до 320 000 ₽
от 200 000 до 290 000 ₽