如何使用PHP Simple HTML Dom获取自定义属性?

时间:2015-11-19 09:55:24

标签: php simple-html-dom

我的HTML中有自定义属性的标签

...
<img alt='test' width='20' height='20' title='test' loadlater='path_to_img.png' />
...

当我使用str_get_html加载代码时,一切正常。我可以通过DOM导航,我可以搜索,...但是当我从图像标签中读取属性时

foreach($data->find("img") as $_img) {
    print_r($_img->attr);
}

我只获得有效的HTML属性(alt,title,width,height)。缺少属性loadlater

有没有人设法解析自定义属性?

2 个答案:

答案 0 :(得分:0)

看起来对我而言。

<?php
require_once "./vendor/autoload.php";

$str = "<img alt=\'test\' width=\'20\' height=\'20\' title=\'test\' loadlater=\'path_to_img.png\' />";

$dom = \Sunra\PhpSimple\HtmlDomParser::str_get_html( $str );

foreach($dom->find("img") as $_img) {
    print_r($_img->attr);
}

的结果

Array
(
    [alt] => \'test\'
    [width] => \'20\'
    [height] => \'20\'
    [title] => \'test\'
    [loadlater] => \'path_to_img.png\'
)

作曲家:

"require": {
    "sunra/php-simple-html-dom-parser": "v1.5.0"
}

答案 1 :(得分:0)

这对我有用:

$html = <<<EOF
<img alt='test' width='20' height='20' title='test' loadlater='path_to_img.png' />
EOF;

$dom = str_get_html($html);

echo $dom->find('img', 0)->loadlater;