3 способа сжатия CSS файлов с помощью PHP

Для создания дизайна сайта часто используют CSS-файлы. Это очень удобно для Web-мастеров. Но при использовании CSS-файлов требуется время для их загрузки. Это приводит к более долгому открытию страниц сайта. Чтобы ускорить загрузку сайта можно использовать способы приведенные ниже.

Способ 1

Об этом методе я прочитал где-то год назад на одном сайте посвященному Web-программированию. Для того чтобы использовать этот метод, вначале нужно переименовать CSS-файл style.css в style.css.php. Теперь можно его подключать в Ваш HTML-файл.

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

После того как Вы переименовали CSS-файл, отредактировали его, добавьте в начало файла следующий код:

<?php if(extension_loaded('zlib')){ob_start('ob_gzhandler');} header("Content-type: text/css"); ?>

Затем добавьте следующую строку в самый низу, и сохраните файл.

<?php if(extension_loaded('zlib')){ob_end_flush();}?>

Вот и все. Хотя этот метод является простым, он очень эффективны.

Способ 2

В принципе, Способ 2 работает также как и Способ 1 в разбивке и по переименованию CSS-файлов. Переименовываем style.css в style.css.php и добавляем короткий код в начало CSS-файла:


 <?php
 ob_start ("ob_gzhandler");
 header ("content-type: text/css; charset: UTF-8");
 header ("cache-control: must-revalidate");
 $offset = 60 * 60;
 $expire = "expires: " . gmdate ("D, d M Y H:i:s", time() + $offset) . " GMT";
 header ($expire);
 ?>

Вот и все. Только помните, что Вам не надо добавлять код в начале и в конце нового CSS-файла.

Способ 3

Это еще один способ для ускорения загрузки страниц Вашего сайта. Используя этот способ Вам не надо переименовывать CSS-файл. Просто добавьте в свой HTML-документ следующий код.


 <?php
 header('Content-type: text/css');
 ob_start("compress");
 function compress($buffer) {
 /* удаляет комментарии */
 $buffer = preg_replace('!/\*[^*]*\*+([^/][^*]*\*+)*/!', '', $buffer);
 /* удаляет табуляции, пробели и другое */
 $buffer = str_replace(array("\r\n", "\r", "\n", "\t", ' ', ' ', ' '), '', $buffer);
 return $buffer;
 }
 /* ваши css-файлы*/
 include('master.css');
 include('typography.css');
 include('grid.css');
 include('print.css');
 include('handheld.css');
 ob_end_flush();
 ?>
 

Вот и все. Выберите для себя способ, который Вам больше всего понравился, и используйте его.

Понравился урок? Добавьте его к себе в закладки.

Залишити відповідь

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *