method indexByFirstVal documentation in bbn\X
Creates an associative array based on the first array's value.
Example
$arr = [
[
'a' => 'foo',
'b' => 'bar'
],
[
'a' => 'foo2',
'b' => 'bar2'
]
];
X::indexByFirstVal($arr);
// (array) ['foo' => 'bar', 'foo2' => 'bar2']
function(array $ar)
{
if (empty($ar) || !isset($ar[0]) || !\count($ar[0])) {
return $ar;
}
$cols = array_keys($ar[0]);
$idx = array_shift($cols);
$num_cols = \count($cols);
$res = [];
foreach ($ar as $d) {
$index = $d[$idx];
unset($d[$idx]);
$res[$index] = $num_cols > 1 ? $d : $d[$cols[0]];
}
return $res;
}
Creates an associative array based on the first array's value. BBN is a suite of PHP and JS libraries and VueJS components - all open-source! bbn.io, build applications, the quick way
This website uses cookies to ensure you get the best experience on our website.
© 2011-2025
BBN Solutions