PHP - сортировка ассоциативного массива с помощью ksort()

Я пытаюсь отсортировать ассоциативный массив по ключу

$fruit[2999] = 'apple';
$fruit[332] = 'banana';
$fruit[400] = 'pineapple';
$fruit[87] = 'pear';

$fruit = ksort($fruit);

print_r($fruit);

Но выход

1

Как я могу отсортировать массив так, чтобы массив был в следующем порядке:

$fruit[87] = 'pear';
$fruit[332] = 'banana';
$fruit[400] = 'pineapple';
$fruit[2999] = 'apple';

2 ответа

Решение

Не помещайте результат сортировки массива в переменную массива

$fruit[2999] = 'apple';
$fruit[332] = 'banana';
$fruit[400] = 'pineapple';
$fruit[87] = 'pear';

ksort($fruit);

print_r($fruit);

Вы получили 1, потому что ksort возвращает true/false. и вы печатаете это значение.

Согласно официальному руководству по PHP ( http://php.net/manual/en/function.ksort.php), ksort() функция возвращает true/false, в случае успеха / ошибки. Итак, правильный ответ:

$fruit[2999] = 'apple';
$fruit[332] = 'banana';
$fruit[400] = 'pineapple';
$fruit[87] = 'pear';

ksort($fruit);

print_r($fruit);
Другие вопросы по тегам