【发布时间】:2017-07-22 10:54:54
【问题描述】:
如果它们是数组,我想将值内爆到逗号分隔的字符串中:
我有以下数组:
$my_array = [
"keywords" => "test",
"locationId" => [ 0 => "1", 1 => "2"],
"industries" => "1"
];
为了实现这一点,我有以下代码:
foreach ($my_array as &$value)
is_array($value) ? $value = implode(",", $value) : $value;
unset($value);
上面的也会改变原来的数组。有没有更优雅的方法来创建与上述相同的新数组?
我的意思是,如果它们是单行代码中的数组,则内爆值?也许array_map()? ...但是我必须创建另一个函数。
【问题讨论】:
-
为什么必须在一行代码中?拥有更详细、更易读的代码不是更好吗?
-
&运算符正是这样做的,assign by reference,因此您明确要求 PHP 修改原始数组。因此,首先,您不需要使用&。
标签: php multidimensional-array implode