Включайте: css с php расширением файла?

Я хотел бы обернуть css файл в php... Таким образом, я пишу заголовок для css файла и даю ему php расширение, таким образом... css.php. Вопросом является желание эта работа, если страница уже используется в качестве включения..., или этот новый заголовок столкнется с кадром, в который включается страница????

14
задан Peter Mortensen 30 November 2019 в 16:00
поделиться

2 ответа

Это будет работать, если Сценарий includeder не отправляет никаких выходных данных, иначе вы получите ошибку « Заголовки уже отправлены ».

Использование ob_start () в включающем устройстве может быть уловкой, позволяющей избежать этого и заставить все работать.

Html-фреймы не имеют ничего общего с php-include, поэтому в этом случае никакого конфликта нет.

0
ответ дан 1 December 2019 в 06:43
поделиться

Если у вас есть файл с именем css.php , просто убедитесь, что в первых строках задан правильный заголовок типа содержимого. Вы также можете разделить настройки сеанса (если они есть) в bootstrap.php , если вы еще этого не сделали. Быстрый пример загрузки некоторой информации о стилях из базы данных:

<?php 
  header("Content-Type: text/css"); 
  include('bootstrap.php');
  // fetch some information to print out our styles
  $result = mysql_query("SELECT * FROM site_styles");
  while ($row = mysql_fetch_assoc($result)) {
    echo $row["selector"]." {\n".$row["css"]."\n}\n";
  }
?>

Из другого вашего php файла просто выведите тег, чтобы включить css.php, вы не хотите использовать php include () для этой задачи!

<link rel="stylesheet" type="text/css" href="css.php"/>

Хотя, поскольку большинство браузеров довольно агрессивно кэшируют ваш файл css, вы можете обнаружить, что динамическое изменение содержимого этого файла не приносит особой пользы. Вы можете принудительно обновить это, добавив параметр get в href ссылки следующим образом:

<link rel="stylesheet" type="text/css" href="css.php?<?php echo $cssversion ?>"/>

Хотя это приведет к полной перезагрузке вашего файла css при каждом изменении этого параметра. По этой причине, как правило, лучше обслуживать статические файлы css. Если у вас есть несколько стилей, которые необходимо загрузить из параметров конфигурации и т. Д., Которые не очень часто меняются, первый пример должен вам подойти.

15
ответ дан 1 December 2019 в 06:43
поделиться
Другие вопросы по тегам:

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