按包含数字和单词的值对多维数组进行排序

KB

我有一个多维数组,需要按值对它进行排序。当我尝试对其进行排序时,会得到该print_r()结果。

[0] => Array
        (
            [name] => Memory
            [attribute_values] => Array
                (
                    [0] => Array
                        (
                            [name] => test 1
                            [values] => Array
                                (
                                    [0] => 1 Port
                                    [1] => 10 Port s
                                    [2] => 2 Port w
                                    [3] => 3 Port D
                                    [4] => 5
                                )

                        )

                )

        )

我需要这样:

                    [values] => Array
                        (
                            [0] => 1 Port
                            [1] => 2 Port w
                            [2] => 3 Port D
                            [3] => 5
                            [4] => 10 Port s
                        )

值中的文本可以有很大的不同,但是我需要按ASC和DESC中的数字对它进行排序。有可能的?

里格斯愚蠢

使用自然排序 natsort()

$tst = ['1 Port', '10 Port s', '2 Port w', '3 Port D', '5'];

natsort($tst);
print_r($tst);

结果

Array
(
    [0] => 1 Port
    [2] => 2 Port w
    [3] => 3 Port D
    [4] => 5
    [1] => 10 Port s
)

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章