Heim  >  Artikel  >  Backend-Entwicklung  >  array_multisort — 对多个数组或多维数组进行排序

array_multisort — 对多个数组或多维数组进行排序

WBOY
WBOYOriginal
2016-07-30 13:31:041115Durchsuche

array_multisort — 对多个数组或多维数组进行排序 成功返回true 否则false

输入数组被当成一个表的列并以行来排序这类似于 SQL 的 ORDER BY 子句的功能。第一个数组是要排序的主要数组。数组中的行(值)比较为相同的话就按照下一个输入数组中相应值的大小来排序,依此类推。?
第一个参数必须是一个数组。接下来的每个参数可以是数组也可以是下面列出的排序标志。

排序顺序标志:

? SORT_ASC – 按照上升顺序排序

?SORT_DESC – 按照下降顺序排序

?排序类型标志:

SORT_REGULAR – 将项目按照通常方法比较

?SORT_NUMERIC – 将项目按照数值比较

?SORT_STRING – 将项目按照字符串比较

SORT_STRING 和 SORT_REGULAR 都是区分大小写字母的,大写字母会排在小写字母之前。 ?

?每个数组之后不能指定两个同类的排序标志。每个数组后指定的排序标志仅对该数组有效 – 在此之前为默认值 SORT_ASC 和 SORT_REGULAR。

//字符串键名的话将被保留,但是数字键将被重新索引,从 0 开始,并以 1 递增。

对二维数组排序 要求 ID降序 name升序?

<code><span>$arrData</span> =

[

[<span>'id'</span> => <span>1</span>, <span>'name'</span> => <span>'haha'</span>],

[<span>'id'</span> => <span>0</span>, <span>'name'</span> => <span>'aaha'</span>],

[<span>'id'</span> => <span>2</span>, <span>'name'</span> => <span>'caha'</span>],

[<span>'id'</span> => <span>4</span>, <span>'name'</span> => <span>'zaha'</span>],

[<span>'id'</span> => <span>16</span>, <span>'name'</span> => <span>'daha'</span>],

];
<span>/*
现在有了包含有行的数组,但是 array_multisort() 需要一个包含列的数组,因此用以下代码来取得列,然后排序。 ?
*/</span><span>foreach</span>(<span>$arrData</span><span>as</span><span>$key</span>=><span>$value</span>)

{?

<span>$id</span>[<span>$key</span>]=<span>$value</span>[<span>'id'</span>];

<span>$arr</span>[<span>$key</span>]=<span>$value</span>[<span>'name'</span>];

}

<span>// 把排序数组 $arrData 作为最后一个参数</span>?array_multisort(<span>$id</span>, SORT_DESC, <span>$arr</span>, SORT_ASC, <span>$arrData</span>);

print_r(<span>$arrData</span>);</code>

转载或分享请注明地址谢谢:http://blog.csdn.net/w19981220

版权声明:尊重他人的劳动成果就是尊重自己谢谢!!

以上就介绍了array_multisort — 对多个数组或多维数组进行排序,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn