Html Zend框架dom问题
我想通过zend_dom查询获得网站快捷图标(favicon)和样式表路径Html Zend框架dom问题,html,zend-framework,dom,Html,Zend Framework,Dom,我想通过zend_dom查询获得网站快捷图标(favicon)和样式表路径 $dom = new Zend_Dom_Query($html); $stylesheet = $dom->query('link[rel="stylesheet"]'); $shortcut = $dom->query('link[rel="shortcut icon"]'); 样式表查询有效,但快捷方式图标查询无效。我怎么样 谢谢。这似乎是Zend的css样式查询实现的问题。在Zend/Dom/Que
$dom = new Zend_Dom_Query($html);
$stylesheet = $dom->query('link[rel="stylesheet"]');
$shortcut = $dom->query('link[rel="shortcut icon"]');
样式表查询有效,但快捷方式图标查询无效。我怎么样
谢谢。这似乎是Zend的css样式查询实现的问题。在Zend/Dom/Query.php中,Query函数调用转换函数将查询转换为正确的xpath格式:
public function query($query)
{
$xpathQuery = Zend_Dom_Query_Css2Xpath::transform($query);
return $this->queryXpath($xpathQuery, $query);
}
但是在transform()
方法中,他们似乎使用了一些非常基本的正则表达式来按空格分割字符串:
$segments = preg_split('/\s+/', $path);
这基本上意味着您的链接[rel=“快捷方式图标”]
查询现在变成两个查询:链接[rel=“快捷方式”
和图标”]
要解决这个问题,可以使用方法Zend\u Dom\u Query::queryXpath()
,并为其提供适当的xPath查询。像这样:
$dom->queryXpath('//link[@rel="shortcut icon"]');