2015-07-13 3 views
2

Я знаю, что могу попросить, чтобы мой php-файл работал как css один, я уже сделал. Моя проблема заключается в том, как использовать переменные в других файлах css-php? Мой файл css.php с глобальными переменными загружается перед другими в список html, но, похоже, он не включает его.Использовать переменные php в нескольких файлах css

Мой HTML:

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

Мой variables.css.php файл:

<?php 
    header("Content-type: text/css"); 
    $color = "#004D7F"; 
?> 

Мой main.css.php файл:

<?php header("Content-type: text/css"); ?> 
body { 
    background: <?=$color;?>; 
} 

Но это не работает , он не распознает переменную $ color. Поэтому я попытался добавить в main.css.php:

require("/assets/css/variables.css.php"); 

Но он выбросил ошибку. Кто-нибудь знает ответ? Как получить доступ к php-переменным в другом файле php, действующем как css?

Спасибо заранее!

- Карлос

+0

Не могли бы вы дать нам ошибку, вызванную 'require'? – zilongqiu

+0

Не могу, потому что он работает как файл css – Carlos2W

+0

Еще несколько вопросов. Как вы запустили файл .html? Используете ли вы apache (например, localhost/test.html) или запускаете двойной щелчок по файлу? Если вы запустили двойной клик, он не сможет работать, потому что ваши .php-файлы не могут быть выполнены. – zilongqiu

ответ

1

Что видит веб-сервер не то, что видит браузер. В частности, хотя путь к файлу будет http://domain/assets/css/variables.css.php, на стороне сервера вам нужно будет отразить местоположение фактического кода. С ведущей косой чертой сервер ищет файл, начинающийся с корня файловой системы.

Снимите слэш

Это может быть достаточно, чтобы заставить его работать, если относительный путь правилен

Если это не поможет,

Удалить части путь до его работы

Если оба файла сидят в /var/www/html/assets/css/, то просто делать require("variables.css.php") достаточно.


Кроме того, нет необходимости включать variables.css.php внутри веб-страницы. PHP будет автоматически заполнять значения внутри main.css.php.

+0

Спасибо, ты был прав. Я, наконец, просто написал require ("variables.css.php") и удалил include на html-странице, и он работает. – Carlos2W