Проблема сортировки массива с десятичными числами - PullRequest
1 голос
/ 28 июня 2010

Я пытаюсь отсортировать простой массив, который содержит только несколько десятичных чисел.

Например:

( [0] => 0.05 [1] => 0.076 [2] => 0.092 )

используя это:

$stuff = sort ($comparison);

Однако, когда я использую сортировку php, функции asort ect вместо получения отсортированного массива ячисло 1. Очень запутанно!Любая помощь?

Ответы [ 2 ]

5 голосов
/ 28 июня 2010

Проверьте, что говорит справочная страница для sort () :

Возвращаемые значения

Возвращает TRUE в случае успехаили FALSE при ошибке.

sort() будет сортировать массив, который вы передаете ему напрямую.

Тот факт, что некоторые функции массива делают это таким образом, а другие - наоборот, по-видимому, сбивает с толку.Несовместимость базовой библиотеки - это один из ключевых моментов, когда многие критикуют PHP.

1 голос
/ 28 июня 2010

Функция сортировки возвращает значение true или false в зависимости от успеха или неудачи, массив, который передается в качестве аргумента, сортируется и на него можно ссылаться, используя в этом случае исходную переменную $ array.

$array = array(0.092, 0.76, 0.05);
print_r($array);
    //( [0] => 0.092 [1] => 0.76 [2] => 0.05 ) 
sort($array);
print_r($array);
     //( [0] => 0.05 [1] => 0.092 [2] => 0.76 ) 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...