如何从 PHP 中的数组中删除不需要的值?
how to remove unwanted values from an array in PHP?
我得到了下面的o/p
["1-3","2-3","1-4","2-4"]
因为我怎样才能删除 1-, 2-, 1-, 2-
我想要o/p这样
["3","3","4","4"]
遍历数组中的每个元素并将其分解:
$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" }
如果您假设破折号是两个字符串(或数字)之间的分割线,那么您需要一些正则表达式
/[^-]+$/
这将 return - 破折号后的值
如果您需要,这将为您支付超过 1 位数的费用。
试试这个..
<?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
)
我得到了下面的o/p
["1-3","2-3","1-4","2-4"]
因为我怎样才能删除 1-, 2-, 1-, 2-
我想要o/p这样
["3","3","4","4"]
遍历数组中的每个元素并将其分解:
$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" }
如果您假设破折号是两个字符串(或数字)之间的分割线,那么您需要一些正则表达式
/[^-]+$/
这将 return - 破折号后的值 如果您需要,这将为您支付超过 1 位数的费用。
试试这个..
<?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
)