替换数组/对象PHP中的值

时间:2019-03-16 14:17:06

标签: php arrays object replace

在下面的数组/对象中,我将如何遍历它并例如将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

        )



)

1 个答案:

答案 0 :(得分:2)

您应该只使用SIEcat7而不是$i访问$i[0],因为$i不是数组。

此外,要访问类的属性,您只需直接访问它们即可:

$data->SIEcat7

要将SIEcat7的属性替换为test,方法很简单:

$data->test = $data->SIEcat7;
unset($data->SIEcat7);