php数组有一维数组和而未数组,我们这里分析一下php二维数组排序的技巧。php,一个嵌套的缩写名称,是英文超级文本预处理语言(php:hypertext preprocessor)的缩写。php 是一种 html 内嵌式的语言,是一种在服务器端执行的嵌入html文档的脚本语言,语言的风格有类似于c语言,现在被很多的网站编程人员广泛的运用。php 独特的语法混合了 c、java、perl 以及 php 自创新的语法。
PHP二维数组排序使用asort函数,但如果是多维数组按照其中某索引值进行排序。一般来说这类排序会引入临时数组来存储中间变量比如key值通过对key的排序实现多维数组的一个排序。以下是我写的一段按照二维数组中的时间值进行排序:
PHP二维数组排序代码:
<OL class=dp-xml><LI class=alt><SPAN><STRONG><FONT color=#006699><SPAN class=tag><?</SPAN><SPAN class=tag-name>php</SPAN></FONT></STRONG><SPAN> </SPAN></SPAN><LI class=""><SPAN>//以时间InputDate为key值进行二维数组降序排列 </SPAN><LI class=alt><SPAN> function array_sort($arr,$keys,$type){ </SPAN><LI class=""><SPAN>$</SPAN><SPAN class=attribute><FONT color=#ff0000>keysvalue</FONT></SPAN><SPAN>=</SPAN><SPAN class=attribute-value><FONT color=#0000ff>array</FONT></SPAN><SPAN>(); </SPAN></SPAN><LI class=alt><SPAN>$</SPAN><SPAN class=attribute><FONT color=#ff0000>i</FONT></SPAN><SPAN> = </SPAN><SPAN class=attribute-value><FONT color=#0000ff>0</FONT></SPAN><SPAN>; </SPAN></SPAN><LI class=""><SPAN>foreach($arr as $</SPAN><SPAN class=attribute><FONT color=#ff0000>key</FONT></SPAN><SPAN>=</SPAN><SPAN class=tag><STRONG><FONT color=#006699>></FONT></STRONG></SPAN><SPAN>$val) { </SPAN></SPAN><LI class=alt><SPAN>$val[$keys] = str_replace("-","",$val[$keys]); </SPAN><LI class=""><SPAN>$val[$keys] = str_replace(" ","",$val[$keys]); </SPAN><LI class=alt><SPAN>$val[$keys] = str_replace(":","",$val[$keys]); </SPAN><LI class=""><SPAN>$keysvalue[] =$val[$keys]; </SPAN><LI class=alt><SPAN> </SPAN><LI class=""><SPAN>} </SPAN><LI class=alt><SPAN>asort($keysvalue); //key值排序 </SPAN><LI class=""><SPAN>reset($keysvalue); //指针重新指向数组第一个 </SPAN><LI class=alt><SPAN>foreach($keysvalue as $</SPAN><SPAN class=attribute><FONT color=#ff0000>key</FONT></SPAN><SPAN>=</SPAN><SPAN class=tag><STRONG><FONT color=#006699>></FONT></STRONG></SPAN><SPAN>$vals) { </SPAN></SPAN><LI class=""><SPAN>$keysort[] = $key; </SPAN><LI class=alt><SPAN>} </SPAN><LI class=""><SPAN>$</SPAN><SPAN class=attribute><FONT color=#ff0000>new_array</FONT></SPAN><SPAN> = array(); </SPAN></SPAN><LI class=alt><SPAN>if($type != "asc"){ </SPAN><LI class=""><SPAN>for($</SPAN><SPAN class=attribute><FONT color=#ff0000>ii</FONT></SPAN><SPAN>=</SPAN><SPAN class=attribute-value><FONT color=#0000ff>count</FONT></SPAN><SPAN>($keysort)-1; $ii</SPAN><SPAN class=tag><STRONG><FONT color=#006699>></FONT></STRONG></SPAN><SPAN>=0; $ii--) { </SPAN></SPAN><LI class=alt><SPAN>$new_array[] = $arr[$keysort[$ii]]; </SPAN><LI class=""><SPAN>} </SPAN><LI class=alt><SPAN>}else{ </SPAN><LI class=""><SPAN>for($</SPAN><SPAN class=attribute><FONT color=#ff0000>ii</FONT></SPAN><SPAN>=</SPAN><SPAN class=attribute-value><FONT color=#0000ff>0</FONT></SPAN><SPAN>; $ii</SPAN><STRONG><FONT color=#006699><SPAN class=tag><</SPAN><SPAN class=tag-name>count</SPAN></FONT></STRONG><SPAN>($keysort); $ii++){ </SPAN></SPAN><LI class=alt><SPAN>$new_array[] = $arr[$keysort[$ii]]; </SPAN><LI class=""><SPAN>} </SPAN><LI class=alt><SPAN>} </SPAN><LI class=""><SPAN>return $new_array; </SPAN><LI class=alt><SPAN>} </SPAN><LI class=""><SPAN></SPAN><SPAN class=tag><STRONG><FONT color=#006699>?></FONT></STRONG></SPAN><SPAN> </SPAN></SPAN></LI></OL>
PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号