PHP - Ben Regex ile biraz yardıma ihtiyacım var

0 Cevap php

Ben HTML sayfası içine PHP üretilen verileri yerine PHP basit bir şablon 'motor' oluşturduk. İşte nasıl çalışır:

Benim ana şablon dosyasında, bu yüzden gibi değişkenler var:

<title><!-- %{title}% --></title>

Sonra ana sayfa yük için bu değişkenler veri atamak

$assign = array (
  'title' => 'my website - '
);

Sonra içerik sayfaları için yüklenmiş olsun ayrı şablon blokları var. Yukarıdaki gerçekten sadece başlık ve altbilgi işler. Bu 'içerik şablon dosyaları' biri, ben öyle gibi değişkenler var:

<!-- %{title=content page}% -->

Bu idam alır sonra, ana şablon veri sonuçlanan içerik sayfası değişkenleri içerecek şekilde düzenlenir:

<title>my website - content page</title>

Bu Aşağıdaki kod ile bu yapar:

if (preg_match('/<!-- %{title=\s*(.*?)}% -->/s', $string, $matches)) {
   // Find variable names in the form of %{varName=new data to append}%
   // If found, append that new data to the exisiting data
   $string       = preg_replace('/<!-- %{title=\s*(.*?)}% -->/s', null, $string);
   $varData[$i] .= $matches[1];
}

Bu temelde şablon değişkenleri kaldırır ve sonra varolan değişken değişken veri atar. Şimdi, bu çalışıyor. Ben şablon değişkenleri yuvalama ile sorunlar yaşıyorum neler. : Ben böyle bir şey yapmak

<!-- %{title=content page (author: <!-- %{name}% -->) -->

Desen, bazen, her değişkenin açılış ve kapanış etiketleri işler karışıyor.

Benim düzenli ifade nasıl bu önlemek için düzeltebilirim?

Teşekkür ederim.

0 Cevap