在下面的数组/对象中,我将如何遍历它并例如将test替换为SIEcat7,将test2替换为SIEcat8。在下面尝试,但在访问正确级别时遇到问题
代码
foreach($data as $i => $item) {
if ($i[0] = "SIEcat7") {
$i[0] = "test";
}
}
对象
stdClass Object
(
[SIEcat7] => stdClass Object
(
[text] => test1
[amount] => 1 000.00
)
[SIEcat8] => stdClass Object
(
[text] => test2
[amount] => 0.00
)
)
成为
stdClass Object
(
[test1] => stdClass Object
(
[text] => test1
[amount] => 1 000.00
)
[test2] => stdClass Object
(
[text] => test2
[amount] => 0.00
)
)
答案 0 :(得分:2)
您应该只使用SIEcat7
而不是$i
访问$i[0]
,因为$i
不是数组。
此外,要访问类的属性,您只需直接访问它们即可:
$data->SIEcat7
要将SIEcat7
的属性替换为test
,方法很简单:
$data->test = $data->SIEcat7;
unset($data->SIEcat7);