Rumah >hujung hadapan web >tutorial css >Bagaimanakah saya boleh mengekstrak nama kelas yang mengandungi 'kelas pos' daripada fail CSS menggunakan PHP?

Bagaimanakah saya boleh mengekstrak nama kelas yang mengandungi 'kelas pos' daripada fail CSS menggunakan PHP?

Barbara Streisand
Barbara Streisandasal
2024-11-15 07:45:02375semak imbas

How Can I Extract Class Names Containing

Gunakan PHP untuk Menghuraikan Fail CSS

Dengan PHP, anda boleh menghuraikan fail CSS untuk mengekstrak maklumat tertentu. Artikel ini akan membimbing anda melalui kaedah penghuraian tersuai yang memfokuskan pada mengenal pasti nama kelas yang mengandungi rentetan "kelas pos."

Fungsi Penghuraian PHP Tersuai

Fungsi PHP berikut boleh digunakan untuk menghuraikan fail CSS dan mengembalikan tatasusunan nama kelas yang termasuk "postclass":

function parse($file) {
    $css = file_get_contents($file);
    preg_match_all('/(?ims)([a-z0-9\s\.\:#_\-@,]+)\{([^\}]*)\}/', $css, $arr);
    $result = array();
    foreach ($arr[0] as $i => $x) {
        $selector = trim($arr[1][$i]);
        $rules = explode(';', trim($arr[2][$i]));
        $rules_arr = array();
        foreach ($rules as $strRule) {
            if (!empty($strRule)) {
                $rule = explode(':', $strRule);
                $rules_arr[trim($rule[0])] = trim($rule[1]);
            }
        }
        $selectors = explode(',', trim($selector));
        foreach ($selectors as $strSel) {
            $result[$strSel] = $rules_arr;
        }
    }
    return $result;
}

Contoh Penggunaan:

Untuk menggunakan fungsi, lulus laluan fail CSS sebagai hujah:

$css = parse('css/'.$user['blog'].'.php');
echo $css['#selector']['color']; // Outputs the value of the 'color' property for the '#selector' class with 'postclass' in its name

Fungsi ini menghuraikan fail CSS ke dalam tatasusunan bersekutu di mana kuncinya ialah pemilih CSS dan nilainya ialah tatasusunan bersekutu bagi nama harta dan nilai. Dengan mengakses indeks tatasusunan yang sesuai, anda boleh mendapatkan semula maklumat yang diingini, seperti nama kelas yang mengandungi "kelas pos."

Atas ialah kandungan terperinci Bagaimanakah saya boleh mengekstrak nama kelas yang mengandungi 'kelas pos' daripada fail CSS menggunakan PHP?. 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