cari
RumahPerpustakaan PHPPerpustakaan lainkelas penghuraian templat php
kelas penghuraian templat php
<?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语句没有关闭!';
      }
    }
  }

Selepas menerima kandungan fail templat, bina kaedah, dapatkan kandungan fail templat dan huraikannya, gunakan pembolehubah biasa untuk menghuraikan penyataan IF, dan kemudian menghuraikan fail templat untuk menjana fail yang disusun.

Penafian

Semua sumber di laman web ini disumbangkan oleh netizen atau dicetak semula oleh tapak muat turun utama. Sila semak integriti perisian itu sendiri! Semua sumber di laman web ini adalah untuk rujukan pembelajaran sahaja. Tolong jangan gunakannya untuk tujuan komersial. Jika tidak, anda akan bertanggungjawab untuk semua akibat! Jika terdapat sebarang pelanggaran, sila hubungi kami untuk memadamkannya. Maklumat hubungan: admin@php.cn

Artikel Berkaitan

Penghuraian XML Java: Kelas Terbina dalam lwn. Dom4j – Mana Yang Perlu Anda Pilih?Penghuraian XML Java: Kelas Terbina dalam lwn. Dom4j – Mana Yang Perlu Anda Pilih?

29Nov2024

Penghuraian XML dalam Java: Membandingkan Kelas Terbina dalam dengan Dom4jApabila menavigasi landskap luas perpustakaan Java untuk penghuraian XML, adalah penting...

Bagaimana Anda Boleh Mengisytiharkan Templat Kelas sebagai Rakan dalam C?Bagaimana Anda Boleh Mengisytiharkan Templat Kelas sebagai Rakan dalam C?

14Nov2024

Mengisytiharkan Templat Kelas sebagai Rakan: A Deeper DiveIn C , adalah mungkin untuk menentukan kelas sebagai rakan kepada kelas lain, memberikan akses kepada...

Bagaimana untuk Mengisytiharkan Struktur/Kelas Templat sebagai Rakan dalam C ?Bagaimana untuk Mengisytiharkan Struktur/Kelas Templat sebagai Rakan dalam C ?

07Nov2024

Mengisytiharkan Struktur/Kelas Templat sebagai RakanDalam C , seseorang boleh menghadapi kesukaran apabila mengisytiharkan struct atau kelas templat sebagai rakan kepada orang lain...

Bagaimana untuk Mengisytiharkan Struktur atau Kelas Templat sebagai Rakan dalam C?Bagaimana untuk Mengisytiharkan Struktur atau Kelas Templat sebagai Rakan dalam C?

09Nov2024

Mengisytiharkan Struktur Templat atau Kelas sebagai pengaturcaraan FriendIn C, adalah mungkin untuk mengisytiharkan struct atau kelas templat sebagai rakan kepada yang lain...

Mengapa Kelas Templat Perlu Mengisytiharkan Kelas Templat Rakan dengan Parameter Templat Berbeza?Mengapa Kelas Templat Perlu Mengisytiharkan Kelas Templat Rakan dengan Parameter Templat Berbeza?

22Nov2024

Kelas Templat dengan Kelas Templat Rakan: Mentafsir MekanikDalam senario ini, anda mentakrifkan templat kelas pokok binari (BT) dan...

Apa yang perlu dilakukan jika penghuraian php json_decode gagalApa yang perlu dilakukan jika penghuraian php json_decode gagal

10Sep2021

Penyelesaian kepada kegagalan penghuraian json_decode PHP: 1. Dapatkan kod ralat melalui json_last_error dan fungsi lain 2. Hapuskan aksara utf8 yang tidak sah mengikut julat pengekodan utf8.

See all articles