2012-06-22 3 views
2

이 실패,하지만 왜이 작업을 수행합니다그냥 PHP 구문에 문제가있을 수 있습니다

$b = new DOMXPath($z); 
$b = $x->query('//div[contains(@class,"xxx")]'); 

하지만 하나의 내부에 큰 따옴표를 사용하지 않는 :

$b = $x->query("//div[contains(@class,'xxx')]//a"); 
+1

정말인가요? 사실 PHP 쪽에서와 마찬가지로 Xpath에서도이 차이가 없어야합니다. 여기에 '// a'가 추가되면서 차이가 있습니까? [큰 따옴표와 큰 따옴표로 XPath 표현식 인코딩하기] (http://stackoverflow.com/q/642125/367456)도 참고하십시오. – hakre

+0

그 어떤 질문도 실수로 추가되지 않았습니다. 는 작동하지 않습니다. –

+0

대부분의 xpath 예제는 작은 따옴표로 묶여 있습니다. *는 * 작동하지 않는 변형입니다. 다른 문제가 없는지 다시 한 번 확인하십시오. 가능성이 높습니다. 그런데 Stack Overflow에 오신 것을 환영합니다. – hakre

답변

0

어쩌면 문자열 안에 작은 따옴표와 관련이있을 수 있습니다.

이 시도 :

$b = $x->query("//div[contains(@class,\"xxx\")]//a"); 

그렇지 않으면 난 그냥 작은 따옴표 버전에 충실 것입니다. 어쨌든 빅딜은 뭐니?

관련 문제