2013-07-01 20 views
2
$store = curl_exec($ch); // Returns a page of HTML 

$doc = new DOMDocument(); 
$doc->loadHTML($store); 
$xpath = new DOMXpath($doc); 

Vardump $xpathDOMXPath的var_dump: “(略对象的值)”

object(DOMXPath)#2 (1) { 
    ["document"] => string(22) "(object value omitted)" 
} 

这里有什么问题?我试图在HTML代码上使用xpath来提取信息。

object(DOMDocument)#1 (34) { 
    ["doctype"]   => string(22) "(object value omitted)" 
    ["implementation"] => string(22) "(object value omitted)" 
    ["documentElement"] => string(22) "(object value omitted)" 
    ["actualEncoding"] => string(6) "gb2312" 
    ["encoding"]  => string(6) "gb2312" 
    ["xmlEncoding"]  => string(6) "gb2312" 
    ["standalone"]  => bool(true) 
    ... 
+2

这不是XPath如何...... XPath是DOM搜索引擎文件,它不是你载入的文件。 –

回答

2

loadHTMLFile需要的HTML文件不是HTML文件loadhtmlfile的内容的路径。所以,你的代码将

$doc = new DOMDocument(); 
$doc->loadHTMLFile("path to html file"); 
$xpath = new DOMXpath($doc); 

编辑

如果你想从HTML内容加载使用loadhtml

$doc = new DOMDocument(); 
$doc->loadHTML($store); 
$xpath = new DOMXpath($doc); 
+0

我可以从字符串加载吗? – CodeGuru

+1

$ dom-> loadHTML($ string); ?? – CodeGuru

+0

@RainbowHat查看编辑答案。是。 –