Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/arduino/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 使用数组进行数组排序_Php_Arrays_Sorting - Fatal编程技术网

Php 使用数组进行数组排序

Php 使用数组进行数组排序,php,arrays,sorting,Php,Arrays,Sorting,现在,我们必须根据$sortPattern对$toSort数组进行排序 我们应该知道结果 $sortPattern= array(1,2,8,4); $toSort = array(2,4,8,18,16,26); 是否有人知道执行此操作的函数,或者我们应该编写自己的函数来执行此操作?是的,您必须编写自己的排序函数,并将其应用于。在回调中,您可以执行以下操作: $result = array(2,8,4,18,16,26); if($a==$b){ 返回0; }elseif(数组搜索($a,

现在,我们必须根据
$sortPattern
$toSort
数组进行排序

我们应该知道结果

$sortPattern= array(1,2,8,4);
$toSort = array(2,4,8,18,16,26);

是否有人知道执行此操作的函数,或者我们应该编写自己的函数来执行此操作?

是的,您必须编写自己的排序函数,并将其应用于。在回调中,您可以执行以下操作:

$result = array(2,8,4,18,16,26);
if($a==$b){
返回0;
}elseif(数组搜索($a,$sortPattern)
是的,您必须编写自己的排序函数,并将其应用于。在回调中,您可以执行以下操作:

$result = array(2,8,4,18,16,26);
if($a==$b){
返回0;
}elseif(数组搜索($a,$sortPattern)
排序模式对排序有什么影响

看起来可能是:

if ( $a == $b ) {
    return 0;
} elseif ( array_search( $a, $sortPattern ) < array_search( $b, $sortPattern ) {
    return -1;
} else {
    return 1;
}

$sortPattern
$toSort
有什么影响

看起来可能是:

if ( $a == $b ) {
    return 0;
} elseif ( array_search( $a, $sortPattern ) < array_search( $b, $sortPattern ) {
    return -1;
} else {
    return 1;
}

嗯……我看不出模式与最终排序顺序有什么关系?但是您可以使用
usort()按您想要的顺序排序
。请稍微指定一下排序模式的语法,它应该表达什么还不是很清楚。嗯……我看不出该模式与最终排序顺序有什么关系?但您可以使用
usort()按您想要的顺序排序
。请稍微指定一下排序模式的语法,它应该表达什么并不清楚。不要忘记处理a和/或b不在排序模式中的情况。不要忘记处理a和/或b不在排序模式中的情况。