将数据推送到另一个数组中存储的数组中 - php

如何将值添加到另一个数组包含的数组中?

在下面的示例代码中,我试图将字符串“ yellow”添加到由$arr存储的两个数组中,以形成[ [ 'blue',yellow'] , ['green','yellow'] ]

在第一个foreach循环中,黄色一词已成功推入所包含的数组,当我打印出数组$ key时可以看到

当我在最后的foreach循环中打印$ arr时,我附加的黄色消失了


    $arr = array(array("blue"),array("green"));

    foreach ($arr as $key)
    {
        array_push($key,"yellow");
        print_r($key);
    }
    foreach ($arr as $key)
    {
        print_r($key);
    }

    ?>

参考方案

在您的foreach上使用引用,例如&$ key,以保存您的修改:

PHP在foreach中复制了该变量,因此您的$ key实际上与先前数组中的$ key并不相同。

从@ Dharman:

&传递数组的值作为参考,并且不会创建新的
变量的实例。

所以做:

$arr = array(array("blue"),array("green"));

foreach ($arr as &$value)
{
    $value[]='yellow';
    print_r($value);
}
foreach ($arr as $value)
{
    print_r($value);
}

PHP Count数组元素 - php

嗨,有人可以解释为什么这会返回“数组由0个元素组成”。 :$arr = array(1,3,5); $count = count($arr); if ($count = 0) { echo "An array is empty."; } else { echo "An array has $count elements.…

PHP:将数据从二维数组复制到一维数组的最快方法 - php

我有一个巨大的二维PHP数组,带有500万行。$t = [ [ "id" => 1, "name" => "foo" ], [ "id" => 2, "name" => "bar" ] ]; 现在,我必须将此数组的I…

PHP-将日期插入日期时间字段 - php

我已在数据库中使用datetime字段存储日期,使用PHP将“今天的日期”插入该字段的正确方法是什么?干杯, 参考方案 我认为您可以使用php date()函数

PHP-如何获取类的成员函数列表? - php

如果我知道班级的名字。有没有办法知道类的成员函数列表? 参考方案 get_class_methods()是你的朋友

PHP:获取调用引用的数组名称 - php

假定以下函数并调用:function doSomething( &$someArray ) { // Do something to $someArray } $names=array("John", "Paul", "George", "Ringo"); doSomet…