I am working on array functionality in php i face some issue with array sorting.
Array is :
$employees = array(
123 => array(
'id' => 13,
'firstname' => 'Marky',
'lastname' => 'Mark'
),
213 => array(
'id' => 3,
'firstname' => 'Bobby',
'lastname' => 'Bob'
),
256 => array(
'id' => 42,
'firstname' => 'Jimmy',
'lastname' => 'Jim'
)
);
I want this array to be sort by firstname field not affecting any of the key value
I have used
foreach( $employees as $intKey => $Data ) {
$arrstr[$intKey] = $Data['firstname'];
}
array_multisort( $arrstr, SORT_DESC, SORT_STRING, $employees );
but this function is affecting my key value of main array and give me out put like
$employees = array(
0=> array(
'id' => 3,
'firstname' => 'Bobby',
'lastname' => 'Bob'
),
1=> array(
'id' => 42,
'firstname' => 'Jimmy',
'lastname' => 'Jim'
)
2=> array(
'id' => 13,
'firstname' => 'Marky',
'lastname' => 'Mark'
),
);
Here its affecting my key value of main array.
so please help some how to achieve the exact result without affecting the key value like :
$employees = array(
213 => array(
'id' => 3,
'firstname' => 'Bobby',
'lastname' => 'Bob'
),
256 => array(
'id' => 42,
'firstname' => 'Jimmy',
'lastname' => 'Jim'
),`enter code here`
123 => array(
'id' => 13,
'firstname' => 'Marky',
'lastname' => 'Mark'
)
);