Вы можете пойти тремя путями:
1.Создать двумерный массив с числовыми индексами и отсортировать его с помощью usort ();и лямбда-функция
$list = array(array('name' => 'john', 'number' => 1000),
array('name' => 'mike', 'number' => 8393),
array('name' => 'tom', 'number' => 1000)
);
$by = 'number';
usort($list, function($first, $second) use ($by)
{
if ($first[$by] > $second[$by] { return 1; }
elseif (first[$by] < $second[$by]) { return -1; }
return 0;
}
);
2.Создать массив с индексами в качестве имен и отсортировать его с помощью sort ();
$list = array('john' => 1000,
'mike' => 8393,
'tom' => 1000
);
sort($list);
3.Создать массив с индексами в виде чисел и отсортировать его с помощью ksort();
$list = array(1000 => 'john',
8393 => 'mike',
1000 => 'tom'
);
ksort($list);
Если вы выберете первый способ, вы можете обратиться к элементу как
$list[0][name] = 'bob'
$list[1][number] = 1000;
Второй
$list['john'] = 1001;
Третий
$list[1000] = 'bob';
В двух последних случаях вы должны использовать foreach для прохода по массиву
Использовать
print_r($list);
или var_dump ($ list);
для печати массива или созданияваш собственный код
PS Не забывайте, что вызов usort с использованием лямбда-функции - это способ PHP 5.3, если вы используете более раннюю версию PHP, вам следует использовать дискретную функцию