相关疑难解决方法(0)

在PHP中对多维数组进行排序

我目前正在创建一个由mysql查询中的值组成的排序方法.

这是阵列的简要视图:

    Array
    (
        [0] => Array
            (
                ['id'] = 1;
                ['countries'] = 'EN,CH,SP';
            )
        [1] => Array
            (
                ['id'] = 2;
                ['countries'] = 'GE,SP,SV';
            )
    )
Run Code Online (Sandbox Code Playgroud)

我已经成功地根据数字id值进行了正常的操作,但是我更愿意按"countries"字段的内容对数组进行排序(如果它包含一个设置字符串,在这种情况下是一个国家/地区代码),然后由id字段.

以下片段是我对如何做到的第一个想法,但我不知道如何将它合并到一个工作函数中:

in_array('EN', explode(",",$a['countries']) );
Run Code Online (Sandbox Code Playgroud)

你会怎么做?

谢谢!


不幸的是,我真的无处可去.

这就是我现在拥有的东西,它给我的只是错误: uasort() [function.uasort]: Invalid comparison function

function compare($a, $b) {
    global $usercountry;

        if ( in_array($usercountry, $a['countries']) && in_array($usercountry, $a['countries']) ) {
            $return = 0;
        }

        else if (in_array($usercountry, $a['countries'])) {
            $return = 1;
        }

        else {
            $return = -1;
        }

        return $return;


        }

        $array= usort($array, …
Run Code Online (Sandbox Code Playgroud)

php arrays usort multidimensional-array

5
推荐指数
1
解决办法
4800
查看次数

标签 统计

arrays ×1

multidimensional-array ×1

php ×1

usort ×1