当我将一个字符串值添加到数组中时array_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);
Run Code Online (Sandbox Code Playgroud)
输出是3.我想要的是什么$array2 = array("test", "test2", "one")
Sha*_*ngh 11
该array_push的工作,因为它是专为.
它将添加该值并返回该数组中的元素数.
所以很自然,如果它返回3你的数组在数组推后有2个元素,现在有三个元素.
您应该使用print_r($array2)数组并查看元素.
这一行:
$push = array_push($array2, $value);
Run Code Online (Sandbox Code Playgroud)
应该只是
array_push($array2, $value);
Run Code Online (Sandbox Code Playgroud)
array_push()使用对数组的引用作为第一个参数.当你print_r(),你打印阵列$array2,而不是$push.
您正在打印返回值,其返回值array_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);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
43965 次 |
| 最近记录: |