0

我有一个这样的数组:

$Array = array("0","2","0","5","0");

我想要的具体值是2和5,所以数组会是这样的:

$newArray = array("2","5");

谢谢。

4

3 回答 3

2

由于"0"错误的,您可以使用array_filter从数组中删除所有“0”:

$array = array("0","2","0","5","0","7","0");
$newArray = array_filter($array); // newArray is: ["2", "5", "7"]
于 2013-06-26T15:24:03.200 回答
0

所以你基本上只是想从你的数组中删除零?我认为这应该可以工作,您只需将函数传递给数组和要替换的项目(注意此代码未经测试,您可能需要稍微调整一下)

function array_replace($incomingarray, $tofind)
{
    $i = array_search($tofind, $incomingarray);
    if ($i === false) {
        return $incomingarray;
    } else {
        unset($incomingarray[$i]);
        return array_replace($incomingarray, $tofind);
    }
} 

$Array = array("0","2","0","5","0");
$a = array_replace($Array, 0); 
var_dump($a);
于 2013-06-26T15:14:43.107 回答
0

您可以使用array_filter

function fil($var)
{
if($var == 2 || $var == 5)
return($var);
}
$array1 = array(0,2,0,5,0);
print_r(array_filter($array1, "fil"));

输出

 Array
(
[1] => 2
[3] => 5
)

演示

于 2013-06-26T15:14:54.423 回答