如何在PHP中修剪数组值的空白
我有一个数组如下
$fruit = array(' apple ','banana ', ' , ', ' cranberry ');
我想要一个数组,其中包含两侧没有空格的值,但它可以包含空值如何在php中做到这一点。输出数组应该是这样的
$fruit = array('apple','banana', ',', 'cranberry');
array_map和trim可以完成这项工作
$trimmed_array=array_map('trim',$fruit); print_r($trimmed_array);
array_walk可以用trim()来修饰数组
<?php function trim_value(&$value) { $value = trim($value); } $fruit = array('apple','banana ', ' cranberry '); var_dump($fruit); array_walk($fruit, 'trim_value'); var_dump($fruit); ?>
如果数组是多维的,这将工作得很好:
//trims empty spaces in array elements (recursively trim multidimesional arrays) function trimData($data){ if($data == null) return null; if(is_array($data)){ return array_map('trimData', $data); }else return trim($data); }
一个样本testing是这样的:
$arr=[" aaa ", " b ", "m ", [" .e ", " 12 3", "9 0 0 0 "]]; print_r(trimData($arr)); //RESULT //Array ( [0] => aaa [1] => b [2] => m [3] => Array ( [0] => .e [1] => 12 3 [2] => 9 0 0 0 ) )
$fruit= array_map('trim', $fruit);
使用multidimensional array时,我遇到了现有的问题。 这个解决scheme适用于我。
if (is_array($array)) { foreach ($array as $key => $val) { $array[$key] = trim($val); } }
function trimArray(&$value) { $value = trim($value); } $pmcArray = array('php ','mysql ', ' code '); array_walk($pmcArray, 'trimArray');
testing