Preg_replace bana bir "Bilinmeyen değiştirici" atıyor Neden

1 Cevap php

Bu hatayı almaya devam:

Warning: preg_match() [function.preg-match]: Unknown modifier 't' in D:\xampp\htdocs\administrator\components\com_smms\functions\plugin.php on line 235

üzerine:

$PageContent = preg_replace($result->module_pregmatch, '', $PageContent);

Ben $ result-> module_pregmatch bir var_dump yapmak ve ben şu olsun:

string '/<title>(.*)</title>/Ui' (length=23)

string '/<meta[^>]*name=["|\']description["|\'][^>]*content=["|\'](.*)["|\']\s*\/>/Ui' (length=77)

string '/<meta[^>]*name=["|\']keywords["|\'][^>]*content=["|\'](.*)["|\']\s*\/>/Ui' (length=74)

string '/<meta[^>]*name=["|\']author["|\'][^>]*content=["|\'](.*)["|\']\s*\/>/Ui' (length=72)

string '/<meta[^>]*name=["|\']copyright["|\'][^>]*content=["|\'](.*)["|\']\s*\/>/Ui' (length=75)

string '/<meta[^>]*name=["|\']robots["|\'][^>]*content=["|\'](.*)["|\']\s*\/>/Ui' (length=72)

string '/<meta[^>]*http=equiv=["|\']content-language["|\'][^>]*content=["|\'](.*)["|\']\s*\/>/Ui' (length=88)
string '/<meta[^>]*http-equiv=["|\']content-type["|\'][^>]*content=["|\'](.*)["|\']\s*\/>/Ui' (length=84)

string '/<link[^>]*href=["|\'](.*)["|\'][^>]*rel=["|\']shortcut[^>]*icon["|\'][^>]*type=["|\']image\/x-icon["|\']\s*\/>/Ui' (length=114)

string '/<link[^>]*href=["|\'](.*)["|\'][^>]*rel=["|\']alternate["|\'][^>]*type=["|\']application\/rss\+xml["|\'][^>]*title=["|\'](.*)["|\'][^>]\/>/Ui' (length=142)

string '/<link[^>]*href=["|\'](.*)["|\'][^>]*rel=["|\']alternate["|\'][^>]*type=["|\']application\/atom\+xml["|\'][^>]*title=["|\'](.*)["|\'][^>]\/>/Ui' (length=143)

Birisi ben yanlış yapıyorum bana söyleyebilir misiniz? Ben çok uzun bir yol için, bu hata sıkışmış oldum ...

1 Cevap

Eğer regex desen Ayraç olarak öne eğik kullanıyveyasanız, yani /<title>(.*)</title>/Ui' (</title> eğik çizgi) çalışmaz.

Sen eğik çizgi kaçış ya da örneğin, desen içinde yer almayan farklı bir sınırlayıcı kullanmak gerekir

'/<title>(.*)<\/title>/Ui' //(esacaping)

veya

'~<title>(.*)</title>~Ui' //different delimiter