我使用simple dom parser进行一些报废但未能获得自定义属性(颜色).我能够让其他人像h3的内心文本那样有价值.
我的dom看起来很简单
Hi
Hi 2
Hi 3
我的代码到目前为止
$dom = $html->find('article');
$arr = array();
foreach ($dom as $data) {
if(isset($data->find('h3',0)->plaintext)){
$h3 = $data->find(h3',0)->plaintext;
}
}
$arr[] = array(
"title" => $h3,
/* "color" => $color */
);
echo json_encode(array_values($arr));
解决方法:
如果您正在使用数据属性属性,并且因为DOM元素属性被视为该simple-html-dom对象的属性,则只需像往常一样使用大括号处理带连字符的属性:
$object->{'property-with-a-hyphen'}
所以当你在代码中应用它时:
foreach($dom as $data) {
$color = '';
if(isset($data->{'data-color'})) {
$color = $data->{'data-color'};
}
// array declarations below
$arr[] = array(
'color' => $color,
);
}
标签:php,arrays,html,simple-html-dom
来源: https://codeday.me/bug/20190628/1317793.html