Вы можете просто написать рекурсивную функцию для автоматической конкатенации ключей вместе.
function getKeysString($array, $prefix = '') {
$keys = array();
foreach($array as $key => $value) {
$str = $prefix.$key;
if(is_array($value)) {
$str = getKeysString($value, $str);
}
$keys[] = $str;
}
return implode(',', $keys);
}
Итак, с учетом массива:
$arr = array (
'a' => array (
'a' => array (
'a' => null,
'b' => null
),
'b' => array (
'a' => null,
'b' => null
)
),
'b' => array (
'a' => array (
'a' => null,
'b' => null
),
'b' => array (
'a' => null,
'b' => null
)
)
);
Следующее даст вам желаемый результат:
$result = getKeysString($arr);