HTML — включить переменные PHP в CSS

Итак … У меня есть файл index.php, в котором я определил класс с именем ‘rectangles’. Этот класс имеет цвет и размер.

Я создал переменную с именем

$rectangle($rectangle=new rectangles('red',25);).

И да, я сделал

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

Затем я создал другой файл «test1.css», в котором я определил теги ‘div’ следующим образом:

div{
color:<?php echo $rectangle->color; ?>;
}

Я пытался положить в этот файл .css <?php include 'index.php'; ?> но мои переменные из файла .php не будут работать, что бы я ни пытался.

Конечно, я попытался изменить test1.css на test1.php и попытаться это сделать, но он работает только с переменными, которые я установил в test1.php, а не из index.php.

Ну, я не знаю, хорошо ли я объяснил свою проблему, но надеюсь, вы понимаете …
Заранее спасибо.

0

Решение

То, что вы хотите сделать, очень распространено и делается каждый день в разработке CMS. Вы можете использовать SASS или LESS, вы можете включить стиль в качестве внутреннего CSS в ваши PHP-файлы, как ответил Родриго, или вы можете сделать это:

1) Добавьте это в свой заголовок:

<?php header("Content-type: text/css; charset: UTF-8"); ?>

2) в той же папке вашего файла, добавьте файл .htaccess с этим содержанием:

AddHandler application/x-httpd-php .css

2.b) Кроме того, вы можете установить свой конфигурационный файл Apache следующим образом:

AddType application/x-httpd-php .php .php3 .php4 .php5
AddType application/x-httpd-php-source .phps
AddHandler cgi-script .cgi .pl

Теперь вы можете быть счастливым туристом и добавлять переменные PHP в свои CSS-файлы.

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

3

Другие решения

Вы можете сделать это, добавив свой стиль в ваш файл php. Итак, в вашем php или phtml файле вы можете сделать что-то вроде этого:

// php код
,
,
,

<head>
<style>

div{
color:<?php echo $rectangle->color; ?>;
}

</style>
</head>

Он не будет работать в файле с расширением .css.

Надеюсь, поможет.

1

Еще один способ:

<head>
<style>
<?php include 'style.css'; ?>
</style>
</head>

style.css

div{
color:<?php echo $rectangle->color; ?>;
}

Но в этом случае стиль не будет работать, если мы <link> тег из-за php-кода на нем. Таким образом, мы также можем переименовать style.css в style.pcss или что-то в этом роде, чтобы избежать путаницы в том, что файл представляет собой встроенный CSS-файл CSS или PHP.

0
По вопросам рекламы [email protected]