Реализация динамической сортировки массивов на основе пользовательского ввода.Php

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 Реализация динамической сортировки массивов на основе пользовательского ввода.

Сообщение Anonymous »

Итак, я хочу отсортировать массив в зависимости от того, что выбирает пользователь. Мне удалось заставить все это работать (с небольшой помощью вас, ребята), и теперь я пытаюсь очистить код. Вот что у меня получилось

Код: Выделить всё

//Global Sorting Functions (For Rows to Columns)
//Function to sort up or down
function cmpdwn($a, $b) {
return strcasecmp($a["Name"], $b["Name"]);
}

function cmpup($a, $b, $c) {
return strcasecmp($b[$c], $a[$c]);
}

//Name Ordering Function ---------------------------------
function nameorder($data) {
//If Up sorts Assending if Down Decending
if ($_POST['Sortby'] == "NameDown") {
uasort($data, "cmpdwn");
} else {
uasort($data, "cmpup");
}

$nameorder = array();
$count = 0;
while (list($key, $value) = each($data)) {
$nameorder[$count] = $key;
$count++;
}
return $nameorder;
}
Это создает массив для печати данных в порядке имен. Я буду повторять это и для электронной почты, и для других. Я хотел повторно использовать функцию «cmp», вставив в нее более $a и $b (т. е. $c = «Имя», тогда я могу вставить «Email» или что-то еще // cmpup в качестве примера). Но насколько я знаю, эта функция объявляет аргумент для uasort, и я не отправляю в нее переменные. Есть ли способ сделать это или это случай многократного переписывания функции.

Подробнее здесь: https://stackoverflow.com/questions/242 ... user-input
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»