У меня была эта проблема до before без реального разрешения. Это происходит снова, поэтому я надеюсь, что вам помогут эксперты.Почему я не могу передать переменные во включенный файл в PHP?
Я установил переменную на свой index.php на основе массива $ _GET. Поэтому я использую этот код:
$admin = isset($_GET['admin']) ? $_GET['admin'] : "dashboard";
Ниже, что я использую функцию, чтобы включить мой макет:
include_layout("admin_header.php");
, который вызывает эту функцию:
function include_layout($template="") {
include(SITE_ROOT.DS.'layouts'.DS.$template);
}
До сих пор так хорошо, все работает. Но если я попытаюсь повторить переменную $ admin из файла admin_header.php, я ничего не получаю. Это похоже на то, что он не установлен. Я даже тестирую его, используя echo $admin;
прямо перед тем, как включить заголовочный файл, и он выводит его, но он не задан с точки зрения файла admin_header.php.
Зачем это произошло? Это как-то связано с использованием функции для включения, а не для ее непосредственного включения? И если так, ПОЧЕМУ это имеет значение?
Вы могли бы объяснить, почему он не работает должным образом, а именно, что файл включен в контекст функции. – gnud
Вот и все. Благодаря! – rhodesjason