Maison  >  Article  >  développement back-end  >  Comment convertir les styles des fichiers PHP en feuilles de style CSS

Comment convertir les styles des fichiers PHP en feuilles de style CSS

PHPz
PHPzoriginal
2023-03-27 16:16:23761parcourir

Le fichier PHP exporte la feuille de style CSS La feuille de style CSS est un langage de définition de style utilisé dans le développement Web pour contrôler la mise en page et les effets d'affichage des documents HTML. Lors du développement de sites Web, nous rencontrons souvent des situations dans lesquelles nous devons convertir les définitions de style des fichiers PHP en feuilles de style CSS distinctes. Bien que l'opération manuelle puisse faire le travail, lorsque la quantité de code dans le fichier PHP est importante, la conversion manuelle deviendra très longue et fastidieuse.

Alors, existe-t-il des moyens simples de convertir facilement les définitions de style des fichiers PHP en feuilles de style CSS distinctes ? Idée de base Dans les fichiers PHP, les définitions de style sont généralement incluses dans la balise `c9ccee2e6ea535a969eb3f532ad9fe89` dans les documents HTML. Par exemple :

<!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>

Dans ce code, la balise `c9ccee2e6ea535a969eb3f532ad9fe89` contient la définition du style de la page.

Pour convertir ces définitions en feuilles de style CSS, nous pouvons suivre les idées de base suivantes :

1. Extraire toutes les définitions de style des fichiers PHP, ce qui peut être réalisé en utilisant des techniques telles que les expressions régulières.

2. Classez les définitions de style en fonction des noms de balises et de classes, et organisez-les en règles de style CSS.

3. Écrivez les règles de style organisées dans un fichier de feuille de style CSS indépendant. Mise en œuvre spécifique Tout d’abord, nous devons utiliser PHP pour lire le fichier PHP que nous voulons convertir. En supposant que ce fichier est `sample.php`, vous pouvez utiliser le code suivant pour lire le contenu du fichier :

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

Ensuite, nous devons utiliser des expressions régulières pour extraire toutes les définitions de style dans le fichier PHP. Le code suivant utilise l'expression régulière `(.*?)` pour faire correspondre tout ce qui se trouve entre `c9ccee2e6ea535a969eb3f532ad9fe89` et `531ac245ce3e4fe3d50054a55f265927` :

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

La définition de style extraite est stockée dans `$styles[1] ` Dans le tableau. Nous pouvons désormais organiser nos définitions de style en règles de style CSS. Le code suivant organise les définitions de style en règles de style CSS en fonction des noms de balises et de classes, et stocke les règles dans le tableau `$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);
            }
        }
    }
}

Enfin, nous pouvons écrire les règles de style organisées dans un fichier de feuille de style CSS indépendant milieu. Le code suivant utilise la fonction `file_put_contents()` pour écrire les règles de style dans un fichier nommé `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);
}

De cette façon, nous avons terminé le travail de conversion des définitions de style dans le fichier PHP en style CSS feuille.

Résumé

Dans le développement de sites Web, il est très courant de convertir les définitions de style dans les fichiers PHP en feuilles de style CSS distinctes. Bien que ce travail puisse être effectué manuellement, lorsque la quantité de code dans le fichier PHP est importante, la conversion manuelle deviendra très longue et fastidieuse. Cet article présente une méthode permettant de convertir rapidement les définitions de style des fichiers PHP en feuilles de style CSS, ce qui peut aider les développeurs à améliorer l'efficacité du développement et à réduire les erreurs de développement.

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn