我环顾四周,看到很多人问如何用嵌套数组来实现数组的内爆。但是,这些人通常也希望包括嵌套数组。我不想包括嵌套数组…我想抛出嵌套数组…
这是我的阵列:
[tag] => Array ( [0] => one [1] => two [0_attr] => Array ( [category] => three [lock] => four ) [2] => five )
如果我用逗号分隔的方式使这个数组内爆,我希望结果是:
one, two, five
注意如何不包括3和4。因为它们是嵌套数组,所以我不想要它。我只想要即时值。我该怎么做?
您需要迭代$tag中的所有值并过滤掉那些is数组 例如
$tags = array(); foreach ($tag as $index=>$value) { if (!is_array($value)) { $tags[$index] = $value; } } implode(',', $tags);
我发现上面有点乏味, 这是改进版
$arr = array(0 => "one", 1 => "two", 2 => array(1,2,3), 3=>4, 4=>new stdClass); echo implode(",", array_filter($arr, "is_scalar"));
输出:
one,two,4