Analyser un fichier CSS avec PHP
En PHP, l'analyse d'un fichier CSS nécessite des techniques spéciales pour extraire des informations spécifiques. Pour illustrer, considérons la tâche consistant à récupérer les noms de classe contenant « postclass » à partir d'un fichier CSS.
Pour y parvenir, nous pouvons exploiter les expressions régulières. Voici une solution :
<code class="php">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; }</code>
Avec cette fonction, vous pouvez analyser un fichier CSS et accéder à des classes spécifiques et à leurs propriétés. Par exemple, pour récupérer la propriété color de la classe "#selector", utilisez :
<code class="php">$css = parse('css/'.$user['blog'].'.php'); $css['#selector']['color'];</code>
Cette solution vous permet d'analyser dynamiquement les fichiers CSS dans vos applications PHP, en extrayant des informations personnalisées basées sur des critères définis par l'utilisateur. .
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!