Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk menukar gaya dalam fail PHP kepada helaian gaya CSS

Bagaimana untuk menukar gaya dalam fail PHP kepada helaian gaya CSS

PHPz
PHPzasal
2023-03-27 16:16:23745semak imbas

Fail PHP mengeksport helaian gaya CSS Helaian gaya CSS ialah bahasa definisi gaya yang digunakan dalam pembangunan web untuk mengawal reka letak dan kesan paparan dokumen HTML. Dalam pembangunan laman web, kami sering menghadapi situasi di mana kami perlu menukar takrif gaya dalam fail PHP ke dalam helaian gaya CSS yang berasingan. Walaupun operasi manual boleh menyelesaikan kerja, apabila jumlah kod dalam fail PHP adalah besar, penukaran manual akan menjadi sangat memakan masa dan membosankan.

Jadi, adakah terdapat cara mudah untuk menukar takrif gaya dalam fail PHP kepada helaian gaya CSS yang berasingan? Idea asas Dalam fail PHP, takrifan gaya biasanya disertakan dalam teg `c9ccee2e6ea535a969eb3f532ad9fe89` dalam dokumen HTML, contohnya:

<!DOCTYPE html>
<html>
<head>
<title>Sample Page</title>
<style type="text/css">
body {
background-color: #F8F9FA;
font-family: Arial, sans-serif;
}
h1 {
color: #424242;
font-size: 28px;
font-weight: bold;
}
</style>
</head>
<body>
<h1>Hello World!</h1>
<p>This is a sample page.</p>
</body>
</html>

Dalam kod ini, teg `c9ccee2e6ea535a969eb3f532ad9fe89` mengandungi gaya halaman takrifan.

Untuk menukar definisi ini kepada helaian gaya CSS, kita boleh mengikuti idea asas berikut:

1 Ekstrak semua definisi gaya daripada fail PHP, yang boleh dicapai menggunakan teknik seperti ungkapan biasa .

2. Kelaskan takrif gaya mengikut nama teg dan nama kelas, dan susunkannya ke dalam peraturan gaya CSS.

3. Tulis peraturan gaya tersusun ke dalam fail helaian gaya CSS bebas. Pelaksanaan khusus Pertama, kita perlu menggunakan PHP untuk membaca fail PHP yang ingin kita tukar. Dengan mengandaikan fail ini ialah `sample.php`, anda boleh menggunakan kod berikut untuk membaca kandungan fail:

$phpfile = &#39;sample.php&#39;;
$phpcontent = file_get_contents($phpfile);

Seterusnya, kita perlu menggunakan ungkapan biasa untuk mengekstrak semua definisi gaya dalam fail PHP. Kod berikut menggunakan ungkapan biasa `(.*?)` untuk memadankan segala-galanya antara `c9ccee2e6ea535a969eb3f532ad9fe89` dan `531ac245ce3e4fe3d50054a55f265927`:

preg_match_all("/<style type=\"text\/css\">(.*?)<\/style>/s", $phpcontent, $styles);

Takrif gaya yang diekstrak disimpan dalam ` tatasusunan $styles[1]`. Kini kita boleh menyusun takrif gaya kita ke dalam peraturan gaya CSS. Kod berikut menyusun takrif gaya ke dalam peraturan gaya CSS mengikut nama teg dan nama kelas dan menyimpan peraturan dalam tatasusunan `$cssrules`:

$cssrules = array();
foreach ($styles[1] as $style) {
    preg_match_all(&#39;/([\w\s.#{}:,%_-]*)\{([^\}]*)\}/&#39;, $style, $matches, PREG_SET_ORDER);
    foreach ($matches as $match) {
        $selectors = preg_split(&#39;/,\s*/&#39;, $match[1], -1, PREG_SPLIT_NO_EMPTY);
        $props = preg_split(&#39;/;\s*/&#39;, $match[2], -1, PREG_SPLIT_NO_EMPTY);
        foreach ($selectors as $selector) {
            $selector = trim($selector);
            if(!isset($cssrules[$selector])) {
                $cssrules[$selector] = array();
            }
            foreach ($props as $prop) {
                list($prop, $value) = explode(&#39;:&#39;, $prop);
                $cssrules[$selector][trim($prop)] = trim($value);
            }
        }
    }
}

Akhir sekali, kita boleh menulis peraturan gaya tersusun ke dalam a dalam fail helaian gaya CSS yang berasingan. Kod berikut menggunakan fungsi `file_put_contents()` untuk menulis peraturan gaya ke dalam fail bernama `style.css`:

$cssfile = &#39;style.css&#39;;
file_put_contents($cssfile, &#39;&#39;);
foreach ($cssrules as $selector => $props) {
    $line = $selector . " {\n";
    foreach ($props as $prop => $value) {
        $line .= "\t" . $prop . &#39;: &#39; . $value . ";\n";
    }
    $line .= "}\n";
    file_put_contents($cssfile, $line, FILE_APPEND);
}

Dengan cara ini, kami telah selesai menukar takrifan gaya dalam fail PHP kepada Lembaran gaya CSS berfungsi.

Ringkasan

Dalam pembangunan tapak web, adalah keperluan yang sangat biasa untuk menukar takrif gaya dalam fail PHP kepada helaian gaya CSS yang berasingan. Walaupun kerja ini boleh dilakukan secara manual, apabila jumlah kod dalam fail PHP adalah besar, penukaran manual akan menjadi sangat memakan masa dan menyusahkan. Artikel ini memperkenalkan kaedah untuk menukar definisi gaya dalam fail PHP dengan cepat kepada helaian gaya CSS, yang boleh membantu pembangun meningkatkan kecekapan pembangunan dan mengurangkan ralat pembangunan.

Atas ialah kandungan terperinci Bagaimana untuk menukar gaya dalam fail PHP kepada helaian gaya CSS. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn