<?php class Parser { private $_tpl; public function __construct($_tplFile) { if (! $this->_tpl = file_get_contents($_tplFile)) { exit('ERROR:模版文件读取错误'); } } private function parvar() { $_patten = '/<!--\s+\{$([\w]+)\}\s+-->/'; if (preg_match($_patten,$this->_tpl)) { $this->_tpl = preg_replace($_patten, "<?php echo $this->_vars[''];?>",$this->_tpl); } } private function parif(){ $_pattenif = '/<!--\s+\{if\s+$([\w]+)\}\s+-->/'; $_pattenElse = '/<!--\s+\{else\}\s+-->/'; $_pattenEndif = '/<!--\s+\{\/if\}\s+-->/'; if (preg_match($_pattenif,$this->_tpl)) { if (preg_match($_pattenEndif,$this->_tpl)) { $this->_tpl = preg_replace($_pattenif,"<?php if ($this->_vars['']){?>",$this->_tpl); $this->_tpl = preg_replace($_pattenEndif,"<?php } ?>",$this->_tpl); if (preg_match($_pattenElse,$this->_tpl)) { $this->_tpl = preg_replace($_pattenElse,"<?php }else{?>",$this->_tpl); } }else{ echo 'ERROR:IF语句没有关闭!'; } } }
Après avoir reçu le contenu du fichier modèle, construisez une méthode, obtenez le contenu du fichier modèle et analysez-le, utilisez des variables ordinaires pour analyser l'instruction IF, puis analysez le fichier modèle pour générer un fichier compilé.
Toutes les ressources de ce site proviennent d'internautes ou sont réimprimées par les principaux sites de téléchargement. Veuillez vérifier vous-même l'intégrité du logiciel ! Toutes les ressources de ce site sont uniquement à titre de référence d'apprentissage. Merci de ne pas les utiliser à des fins commerciales. Sinon, vous serez responsable de toutes les conséquences ! En cas d'infraction, veuillez nous contacter pour la supprimer. Coordonnées : admin@php.cn
Article connexe

23 Dec 2016
Cet article présente principalement l'utilisation de la classe d'encapsulation Curl Curl.class.php implémentée en PHP. Il analyse la définition de la classe d'encapsulation Curl et les techniques d'utilisation associées de manière plus détaillée sous la forme d'un exemple complet. valeur. Les amis qui en ont besoin peuvent s’y référer.

09 Nov 2024
Pourquoi certaines méthodes de classe PHP commencent-elles par un trait de soulignement ? En explorant les bibliothèques PHP, vous avez peut-être remarqué que certains développeurs préfèrent...

22 Nov 2024
Classe de modèle avec classe basée sur un modèle ami : déchiffrement des mécanismes Dans ce scénario, vous définissez un modèle de classe d'arbre binaire (BT) et un...

07 Mar 2017
L'éditeur ci-dessous vous apportera une compréhension complète du modèle de mise en page CSS. L'éditeur le trouve plutôt bon, je vais donc le partager avec vous maintenant et le donner comme référence pour tout le monde. Suivons l’éditeur et jetons un coup d’œil.

11 Nov 2024
Vérités cachées : le principal trait de soulignement dans les méthodes de classe PHPEn parcourant les bibliothèques PHP, on peut tomber sur des méthodes de classe préfixées par un...

18 Feb 2017
/*************************************************** ***** *************/VC IPicture affiche des images réseau, affiche des images distantes, affiche des images spécifiées par URL, télécharge des images via HTTP, affiche des images, affiche des images publicitaires en ligne et plus sont les mots-clés que j'ai répertoriés. J'ai recherché cet article plusieurs fois. Je l'ai trouvé après avoir essayé différentes manières d'écrire des mots-clés. Pour faciliter la tâche des autres, j'ai écrit tous les mots-clés. /************************************


Outils chauds Tags

Outils chauds

Bibliothèque PHP pour les conteneurs d'injection de dépendances
Bibliothèque PHP pour les conteneurs d'injection de dépendances

Une collection de 50 excellents algorithmes PHP classiques
Algorithme PHP classique, apprenez d'excellentes idées et élargissez votre réflexion

Petite bibliothèque PHP pour optimiser les images
Petite bibliothèque PHP pour optimiser les images
