如何将字符串值添加到PHP数组中

如何将字符串值添加到PHP数组中,php,Php,当我通过array\u push()将字符串值添加到数组中时,它会给我一个数值,即 $array = array("one", "two", "three"); $array2 = array("test", "test2"); foreach ($array as $value) { if ($value === 'one') { $push = array_push($array2, $value); } } print_r($push); 其输出为3。我想

当我通过
array\u push()
将字符串值添加到数组中时,它会给我一个数值,即

$array = array("one", "two", "three");
$array2 = array("test", "test2");
foreach ($array as $value) {
    if ($value === 'one') {
        $push = array_push($array2, $value);
    }
}
print_r($push);
其输出为
3
。我想要
$array2=array(“test”、“test2”、“one”)

它的设计目的是为了工作

它将添加该值并返回该数组中的元素数

所以如果返回3是很自然的,在数组推送之后,你的数组有2个元素,现在有3个元素

您应该打印($array2)数组并查看元素。

此行:

$push = array_push($array2, $value);
应该是公正的

array_push($array2, $value);

array\u push()
使用对数组的引用作为第一个参数。当您
print\r()
时,您将打印数组
$array2
,而不是
$push

array\u push修改$array2。 $push包含计数($array2)


选中。

array\u push通过引用获取数组并返回数组中新的元素数,而不是所述的新数组。这就是你得到3分的原因。如果要查看数组中的元素,请使用
printr($array2)

您正在打印
array\u push
的返回值,即推送后数组中的项目数。试试这个:

<?php

$array = array("one","two","three");
$array2 = array("test","test2");

foreach ($array as $value) {
    if ($value === 'one') {
       array_push($array2, $value);
    }
}

print_r($array2);

实际上,您应该使用
$array2[]=$value
将把值放入数组中第一个可用的数字键中,而不是
array\u push()


要获取数组中最后一个元素的值(即刚刚添加的元素)并保持数组完整,请使用
end($array)
,或者要获取最后一个元素并将其从数组中删除,请使用
array\u pop($array)

,您的代码工作正常…是的,代码工作正常,但我需要在数组末尾添加一个
1
,当我
print\r($push)
时,应该是这样的
array[0]=>test[1]=>test2[2]=>1