Есть массив:
$product_option_value_data[] = array(
'name' => $option_value['name'],
'product_option_value_id' => $option_value['product_option_value_id'],
'option_value_id' => $option_value['option_value_id'],
'image' => $this->model_tool_image->resize($option_value['image'], 50, 50),
'price' => $price,
'price_prefix' => $option_value['price_prefix']
);
Я его сортирую вот так:
arsort($product_option_value_data);
Проблема том, что в поле option_value['name'] хранятся не числовые данные, а строковые: "0.95 кг","11.5 кг","3.2 кг" и поэтому массив принимает вот такой вид:
Array
(
[0] => Array
(
[name] => 0,95 кг
[product_option_value_id] => 535415
[option_value_id] => 365
[image] =>
[price] => 479.00P
[price_prefix] => =
)
[2] => Array
(
[name] => 11,5 кг
[product_option_value_id] => 535416
[option_value_id] => 447
[image] =>
[price] => 4960.00P
[price_prefix] => =
)
[1] => Array
(
[name] => 3,2 кг
[product_option_value_id] => 535417
[option_value_id] => 520
[image] =>
[price] => 1500.00P
[price_prefix] => =
)
)
Т.е массив отсортирован по значениям в ключе [name], а именно по первым символам значений "0", "1", "3".
Как сделать так, чтобы сортировка все таки была корректной, т.е. на выходе должно быть вот так:
Array
(
[0] => Array
(
[name] => 0,95 кг
[product_option_value_id] => 535415
[option_value_id] => 365
[image] =>
[price] => 479.00P
[price_prefix] => =
)
[1] => Array
(
[name] => 3,2 кг
[product_option_value_id] => 535417
[option_value_id] => 520
[image] =>
[price] => 1500.00P
[price_prefix] => =
)
[2] => Array
(
[name] => 11,5 кг
[product_option_value_id] => 535416
[option_value_id] => 447
[image] =>
[price] => 4960.00P
[price_prefix] => =
)
)