Pat*_*rio 4 php arrays trim array-map double-quotes
我正在使用array_map修剪我的所有数组值,但我需要传递第三个参数,因为我需要的不仅仅是修剪空格,所以我传递了第三个参数.基本上我想修剪空格,单引号和双引号的所有数组值.
我有一个实用程序类,我在其中创建了该函数,它看起来像这样:
public function convertToArray($string, $trim = false) {
$split = explode(",", $string);
if($trim) {
$split = array_map("trim", $split, array(" '\""));
}
return $split;
}
Run Code Online (Sandbox Code Playgroud)
不知怎的,我不能做这个工作.即使我按照这里的答案,我仍然可以在结果中看到双引号.
我甚至试过了
if($trim) {
$split = array_map("trim", $split);
$split = array_map("trim", $split, array("'"));
$split = array_map("trim", $split, array('"'));
}
Run Code Online (Sandbox Code Playgroud)
但我仍然得到相同的结果.
Bar*_*ada 16
array_map采用只接受一个参数的函数.如果要使用trim()与默认参数不同的后续参数映射数组,则必须使用匿名函数对其进行包装:
$split = array_map(function($item) {
return trim($item, ' \'"');
}, $split);
Run Code Online (Sandbox Code Playgroud)