SORU
5 Mart 2013, Salı


Açıklama PHP kapanış etiketi dönüştürme

Benim komut satırları tek bir dize içinde PHP kapanış etiketini içerir. Normal çalışma altında bu bir sorun neden olmaz, ama açýklama yapmak istiyorum.

Ben denedim için bu satırın açıklama ile //, /* */ ve # ama hiçbiri işe çözümleyici olarak görüyor kapanış etiketi için gerçek bir kapanış etiketi.

İşte soru: satırı

$string = preg_replace('#<br\s*/?>(?:\s*<br\s*/?>) #i', '<br />', $string);
//                              ^^             ^^

Ben yukarıdaki satırı dışında açıklama için ne yapabilirim?

CEVAP
5 Mart 2013, Salı


Hile kullanımı: arada iki adet string. Bu şekilde, kapanış etiketi ikiye ayrılır ve geçerli bir kapatma etiketi değil artık. '?>' --> '?'.'>'

Kod:

$string = preg_replace('#<br\s*/?'.'>(?:\s*<br\s*/?'.'>) #i', '<br />', $string);

Bu // yorumlar yapacak.

/* */ yorumlar çalışmak için, */ dizi çok bölünmüş olurdu:

$string = preg_replace('#<br\s*'.'/?'.'>(?:\s*<br\s*'.'/?'.'>) #i', '<br />', $string);

Bütün olsa da, bazen unutmadaha fazlaparçalarının toplamından daha - ama açgözlü olmak kötü, daha iyi bırakılır zamanlar vardırdaha az. :)

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Evan Coury

    Evan Coury

    29 NİSAN 2007
  • guillaume2111's channel

    guillaume211

    19 Kasım 2006
  • NYCarspotter

    NYCarspotter

    26 EYLÜL 2011