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

  • Rachel Talbott

    Rachel Talbo

    26 Ocak 2011
  • Tech4Geeks

    Tech4Geeks

    8 Ocak 2012
  • Tube Time

    Tube Time

    14 Mayıs 2013