我正在从某个网站上删除详细信息。然后我想将HTML解析为PHP数组。
我想像这样显示数组。我需要添加密钥,以便我可以轻松确定将来要使用的数据。
check_admin
这是我的代码:
[info] => Array
(
[0] => info1
[1] => info2
)
但输出会告诉我:
$hk = array('info');
foreach($html->find('div[id="home"] div[id="topinfo"] p') as $home) {
$hometps[] = $home->plaintext;
}
print_r(array_fill_keys($hk,$hometps));
答案 0 :(得分:0)
数组元素不能独立存在。考虑到您希望info
作为索引,它必须是数组的一部分。
如果您想要可用的信息列表,请将它们分配给$info
变量,并在print_r($ info)时,如下所示:
$info = array();
foreach($html->find('div[id="home"] div[id="topinfo"] p') as $home) {
$info[] = $home->plaintext;
}
print_r($info);
你会得到:
Array
(
[0] => info1
[1] => info2
)
答案 1 :(得分:0)
看起来您可能正在尝试重命名数组中的表示值,也称为'键'我猜。我建议在进入foreach时直接对html的输出执行此操作。这应该可以解决你的问题。它看起来像这样(底部的原始示例):
$hk = array('info');
foreach($html->find('div[id="home"] div[id="topinfo"] p') as $hk => $home) {
$hometps[] = $home->plaintext;
}
print_r($hometps);
foreach (array_expression as $key => $value)
statement
第一个表单循环遍历array_expression给出的数组。在每次迭代中,当前元素的值被赋值为$ value,内部数组指针被提前一个(因此在下一次迭代中,您将查看下一个元素)。
第二种形式还会在每次迭代时将当前元素的键分配给$ key变量。