如何从PHP中的数组中删除不需要的值?

时间:2016-03-16 12:58:01

标签: php arrays explode

我得到了以下o / p

["1-3","2-3","1-4","2-4"]

在那我怎样才能删除1-,2-,1-,2 -

我想要这样的o / p

["3","3","4","4"]

3 个答案:

答案 0 :(得分:3)

只需遍历数组中的每个元素并将其展开:

$arr = ["1-3","2-3","1-4","2-4"];

array_walk($arr, function(&$val){
    $val = explode("-",$val)[1];
});

var_dump($arr);

//array(4) { [0]=> string(1) "3" [1]=> string(1) "3" [2]=> string(1) "4" [3]=> string(1) "4" }

答案 1 :(得分:0)

如果你假设破折号是两个字符串(或数字)之间的分割那么你需要一些正则表达式

/[^-]+$/

这将返回 - dash之后的值 如果需要,这将覆盖您超过1位数。

答案 2 :(得分:0)

尝试这个..

<?php 
$input= array('1-3','2-3','1-4','2-4');
$newArr = array();
foreach($input as $key =>$val)
{
    $a = explode('-',$val);
    $newArr[]= $a[1];
}
echo "<pre>"; print_r($newArr);
?>

这将输出

Array
(
    [0] => 3
    [1] => 3
    [2] => 4
    [3] => 4
)