2013-06-08 2 views
0
$str = "<p><example:wow id='test' style='hello' /></p>"; 

preg_match_all ("/<example:wow(.*)[^>]>/", $str, $matches); 

My $ matches [0]에는 데이터가 있으며 (문자열 길이 43) 화면에 문자열 출력이 없다고 표시되어 있습니다.

어레이 (1) {[0] => 문자열 (43) ","}

I 단어 예 전에서 <을 제거하면 : I가 $ 일치 [0 출력을 볼 수 ]. <이있을 때 $ matches [0]에 대한 문자열 값을 가져 오지 못하는 이유는 무엇입니까? My $ matches [1]은 시나리오에 관계없이 괜찮지 만 $ matches [0]를 모두 포착해야합니다. 코드와

나는 $ 일치에이 결과를 받고 있어요 :

Array 
(
    [0] => Array 
     (
      [0] => <example:wow id='test' style='hello' /></p> 
     ) 

    [1] => Array 
     (
      [0] => id='test' style='hello' /></ 
     ) 

) 

+0

아마 꺽쇠 괄호가 의미가있는 어딘가에 출력 할 것입니다. 웹 페이지 및 브라우저는 일반적으로 HTML로 해석합니다. 그러면 뷰 소스를 사용하십시오. – mario

+0

@mario - 감사합니다. – user983223

+0

@ user983223 : 제쳐두고 질문으로, 당신은 무엇을 추출해야합니까? –

답변

0

당신은 브라우저가 알 수없는 HTML/XML 태그를 렌더링하려고 아마 때문에 화면에 데이터를 받고 있지 않습니다 따라서 디버깅을 위해 다음을 시도하십시오.

print_r ($matches); 
관련 문제