PHP array_map trim +参数

时间:2016-12-22 15:35:34

标签: php arrays trim double-quotes array-map

我使用...来修剪我的所有数组值,但我需要传递第三个参数,因为我需要的不仅仅是修剪空格,所以我传递了第三个参数。 基本上我想修剪空格,单引号和双引号的所有数组值。

我有一个实用程序类,我在其中创建了该函数,它看起来像这样:

if(CachedResult)
{
...
}

不知何故,我无法完成这项工作。即使我遵循the answer here,我仍然可以在结果中看到双引号。

我甚至尝试过

array_map

但我仍然得到相同的结果。

3 个答案:

答案 0 :(得分:14)

public TextView textView; @Override protected void onCreate(Bundle savedInstanceState) { textView = (TextView) view.findViewById(R.id.textView1); } public void onCashClick(View view) { money++; textView.setText(money + "$"); } 采用只接受一个参数的函数。如果要使用array_map映射数组,后续参数与默认参数不同,则必须使用匿名函数对其进行包装:

trim()

答案 1 :(得分:2)

我认为您需要使用匿名函数:)

$split = array_map(function ($value) {
    return trim($value, " '\"");
}, $split);

仅仅因为这与其他答案完全相同,这里有另一种选择。如果这是您在许多不同地方需要的操作,这种方法可能很有用;)

function trim_spaces_and_quotes($value) {
    return trim($value, " '\"");
}

$split = array_map('trim_spaces_and_quotes', $split);

答案 2 :(得分:0)

我使用array_walk,您只需将附加字符附加到现有默认值(来自the docs):

array_walk($string_arr_to_trim, function (&$v) {
  $v = trim($v, " \t\n\r\0\x0B'\""); 
});