문제

이 질문은 이미 여기에 답이 있습니다.

나는이 오류를 계속 얻는다 :

경고 : preg_match () [function.preg-match] : d : xampp htdocs administrator components com_smms functions plugin.php 235

에:

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

$ result-> module_pregmatch에서 var_dump를 수행하고 다음을 얻습니다.

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)

누군가 내가 뭘 잘못하고 있는지 말해 줄 수 있습니까? 이 오류가 너무 오래 걸렸습니다 ...

도움이 되었습니까?

해결책

REGEX 패턴 구분 매력으로 포워드 슬래시를 사용하고 있습니다. /<title>(.*)</title>/Ui' 작동 안 할 것이다 (</title> 전방 슬래시가 있습니다).

예를 들어 앞쪽 슬래시를 피하거나 패턴 내에 포함되지 않은 다른 구분기를 사용할 수 있어야합니다.

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

또는

'~<title>(.*)</title>~Ui' //different delimiter
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top