Php 如何按asc和desc顺序按字母顺序对数组排序?

Php 如何按asc和desc顺序按字母顺序对数组排序?,php,arrays,Php,Arrays,我有一组数组,需要在php中按升序和降序对数组进行排序 Array ( [0] => Array ( [product_name] => Blips [product_url] => [product_id] => 123 [state] => GA ) [1] => Array (

我有一组数组,需要在php中按升序和降序对数组进行排序

Array
(
    [0] => Array
        (
            [product_name] => Blips
            [product_url] => 
            [product_id] => 123
            [state] => GA

        )

    [1] => Array
        (
            [product_name] => Alpha               
            [product_id] => 586
            [state] => GA
            )
)

您可以使用usort和strnatcmp来实现:

usort($myArray, function($a, $b) {
    return strnatcmp($a['product_name'], $b['product_name']);
});
如果要按降序排序,只需在排序后反转数组:

$myArray = array_reverse($myArray);
如何同时按“升序和降序”排序?此数组是从SQL查询生成的吗?如果是这样的话,使用
orderby
可能是一种更好的方法,但您需要澄清您的订购要求。可能重复