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

Код внутри. Как засунуть include в переменную?

<? $siteMenu="<? 
include $_SERVER['DOCUMENT_ROOT'].'/core/modules/menu.php';
?>" ?>
Не работает. Почему? как засунуть иклуду в переменную?
  • Вопрос задан
  • 3744 просмотра
Подписаться 1 Оценить Комментировать
Решения вопроса 1
copist
@copist
Empower people to give
Вариант 1.
<? $siteMenu = include($_SERVER['DOCUMENT_ROOT'].'/core/modules/menu.php'); ?>

содержимое файла menu.php должно быть таким
<?php
return array(
    "пункт меню 1",
    "пункт меню 2",
    "пункт меню 3",
);


Вариант 2.
<?php
function getMenu()
{
  ob_start();
  include $_SERVER['DOCUMENT_ROOT'].'/core/modules/menu.php';
  return ob_get_clean();
}

$siteMenu = getMenu();

содержимое файла menu.php должно быть таким
<ul><li>пункт меню 1</li><li>пункт меню 2</li><li>пункт меню 3</li></ul>
Ответ написан
Пригласить эксперта
Ответы на вопрос 3
DrunkMaster
@DrunkMaster
//Файл отдельный one.php в нём:
$siteCore = "<link rel="stylesheet" type="text/css" href="/core/css/style.css">
<link rel="stylesheet" type="text/css" href="/core/css/adaptive.css">
<link rel="stylesheet" type="text/css" href="/core/font/styles.css">
<link rel="icon" type="image/gif" href="/core/img/favicon.gif">"

//Теперь код основного сайта
include 'one.php';
echo "$siteCore";
Ответ написан
zvermafia
@zvermafia
WebDev
Попробуйте это:
$site_menu = function() {
    include $_SERVER['DOCUMENT_ROOT'] . '/core/modules/menu.php';
}
Ответ написан
Комментировать
Ivanq
@Ivanq
Знаю php, js, html, css
Засовывать код в eval - плохая практика. Лучше в переменную записывать адрес, а потом include $menu;

А еще лучше создать в файле функцию show_menu() и ее вызывать
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Похожие вопросы