suchen
HeimPHP-BibliothekenAndere BibliothekenParsing-Klasse für PHP-Vorlagen
Parsing-Klasse für PHP-Vorlagen
<?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语句没有关闭!';
      }
    }
  }

Nachdem Sie den Inhalt der Vorlagendatei erhalten haben, erstellen Sie eine Methode, rufen Sie den Inhalt der Vorlagendatei ab und analysieren Sie ihn, analysieren Sie die IF-Anweisung mit gewöhnlichen Variablen und analysieren Sie dann die Vorlagendatei, um eine kompilierte Datei zu generieren.

Haftungsausschluss

Alle Ressourcen auf dieser Website werden von Internetnutzern bereitgestellt oder von großen Download-Sites nachgedruckt. Bitte überprüfen Sie selbst die Integrität der Software! Alle Ressourcen auf dieser Website dienen nur als Referenz zum Lernen. Bitte nutzen Sie diese nicht für kommerzielle Zwecke. Andernfalls sind Sie für alle Folgen verantwortlich! Wenn ein Verstoß vorliegt, kontaktieren Sie uns bitte, um ihn zu löschen. Kontaktinformationen: admin@php.cn

Verwandter Artikel

Bietet PHP eine BigInteger-Klasse für die Verarbeitung großer Ganzzahlen?Bietet PHP eine BigInteger-Klasse für die Verarbeitung großer Ganzzahlen?

21Oct2024

BigInteger-Klasse in PHPEnthält PHP eine BigInteger-Klasse für die Verarbeitung großer Ganzzahlen? Wenn ja, wie wird darauf zugegriffen und wie wird es genutzt?Antwort:Obwohl PHP nativ keine BigInteger-Klasse enthält, können externe Bibliotheken diese Funktionalität bereitstellen. Zwei Notab

Programmiertechnologie für mobile App-Schnittstellen – lernen Sie, andere Funktionen der PHP-Klasse zu implementierenProgrammiertechnologie für mobile App-Schnittstellen – lernen Sie, andere Funktionen der PHP-Klasse zu implementieren

30Jul2016

: In diesem Artikel wird hauptsächlich die Programmiertechnologie für mobile App-Schnittstellen vorgestellt. Schüler, die sich für PHP-Tutorials interessieren, lernen, wie man andere Funktionen implementiert.

Beispiel-Tutorial für eine PHP-Klasse: abstrakte Klasse und abstrakte MethodeBeispiel-Tutorial für eine PHP-Klasse: abstrakte Klasse und abstrakte Methode

08Aug2016

:In diesem Artikel wird hauptsächlich das PHP-Klassenbeispiel-Tutorial vorgestellt: abstrakte Klasse und abstrakte Methode. Schüler, die sich für PHP-Tutorials interessieren, können darauf zurückgreifen.

Eine einfache gekapselte HTTP-Klasse für PHPEine einfache gekapselte HTTP-Klasse für PHP

30Jul2016

:In diesem Artikel wird hauptsächlich eine einfache gekapselte HTTP-Klasse von PHP vorgestellt. Studenten, die sich für PHP-Tutorials interessieren, können darauf zurückgreifen.

Testen Sie die Parsing-Funktion von Nginx für PHPTesten Sie die Parsing-Funktion von Nginx für PHP

30Jul2016

:In diesem Artikel wird hauptsächlich das Testen der Parsing-Funktion von Nginx für PHP vorgestellt. Studenten, die sich für PHP-Tutorials interessieren, können darauf zurückgreifen.

Wie kann ich die Debugging-Ausgabe von TensorFlow stummschalten?Wie kann ich die Debugging-Ausgabe von TensorFlow stummschalten?

28Oct2024

Unterdrückung der Tensorflow-Debugging-AusgabeTensorflow gibt umfangreiche Informationen über geladene Bibliotheken, gefundene Geräte und andere Debugging-Daten aus ...

See all articles