问题描述
我有一个代码,我想知道您为什么在其中使用 [continue] 运算符 注意:我知道 contiue 的用法是什么,但我想知道为什么我们要在此代码中大量使用它,因此请不要拒绝该问题或使其重复,因为我很高兴
function flatten_array(array $items,array $flattened = []){
foreach($items as $item){
if(is_array($item)){
$flattened = flatten_array($item,$flattened);
continue;
}
$flattened[] = $item;
}
return $flattened;
}
解决方法
continue;
语句确保这部分:
$flattened[] = $item;
不对本身是数组的子项执行。
编写相同函数的更熟悉的方法是:
function flatten_array(array $items,array $flattened = [])
{
foreach ($items as $item) {
if (is_array($item)) {
$flattened = flatten_array($item,$flattened);
} else {
$flattened[] = $item;
}
}
return $flattened;
}