Verwenden Sie PHP zum Parsen einer CSS-Datei
Mit PHP können Sie eine CSS-Datei analysieren, um bestimmte Informationen zu extrahieren. Dieser Artikel führt Sie durch eine benutzerdefinierte Parsing-Methode, die sich auf die Identifizierung von Klassennamen konzentriert, die die Zeichenfolge „postclass“ enthalten.
Benutzerdefinierte PHP-Parsing-Funktion
Die folgende PHP-Funktion kann kann verwendet werden, um eine CSS-Datei zu analysieren und ein Array von Klassennamen zurückzugeben, die „postclass“ enthalten:
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; }
Beispiel Verwendung:
Um die Funktion zu verwenden, übergeben Sie den CSS-Dateipfad als Argument:
$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
Diese Funktion analysiert die CSS-Datei in ein assoziatives Array, in dem die Schlüssel CSS-Selektoren sind und die Werte sind assoziative Arrays von Eigenschaftsnamen und -werten. Durch Zugriff auf den entsprechenden Array-Index können Sie die gewünschten Informationen abrufen, z. B. Klassennamen, die „postclass“ enthalten.
Das obige ist der detaillierte Inhalt vonWie kann ich Klassennamen, die „postclass' enthalten, mit PHP aus einer CSS-Datei extrahieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!