- var_dump: documentation ( source)
<?php
$select = [
'foo',
'bar', [
'size' => 128,
'type' => 'png'
],
'baz',
'qux'
];
function convert($in) {
$out = [];
for ($i = 0, $m = count($in); $i < $m; $i++) {
$current = $in[$i];
$next = $in[$i + 1] ?? null;
if (!is_string($current)) {
throw new \Exception('Malformed field list.');
}
if (is_array($next)) {
$out[$current] = $next;
$i++;
} else {
$out[$current] = true;
}
}
return $out;
}
var_dump(convert($select));