久久久久久久av_日韩在线中文_看一级毛片视频_日本精品二区_成人深夜福利视频_武道仙尊动漫在线观看

在 php 中 usort() 函數是如何工作的

In php how does usort() function works(在 php 中 usort() 函數是如何工作的)
本文介紹了在 php 中 usort() 函數是如何工作的的處理方法,對大家解決問題具有一定的參考價值,需要的朋友們下面隨著小編來一起學習吧!

問題描述

我已經查看了 php 文檔、在線教程,但沒有一個了解 usort 的實際工作方式.我有一個我在下面玩的例子.

I have looked at the php documentation, tutorials online and none of them how usort is actually working. I have an example i was playing with below.

$data = array(

    array('msg' => 'some text','month' => 11,'level' => 10),

    array('msg' => 'some text','month' => 5,'level' => 10),

    array('msg' => 'some text','month' => 8,'level' => 10),

    array('msg' => 'some text','month' => 12,'level' => 10),

    array('msg' => 'some text','month' => 2,'level' => 10),

    array('msg' => 'some text','month' => 3,'level' => 10),

    array('msg' => 'some text','month' => 4,'level' => 10),

    array('msg' => 'some text','month' => 7,'level' => 10),

    array('msg' => 'some text','month' => 10,'level' => 10),

    array('msg' => 'some text','month' => 1,'level' => 10),

    array('msg' => 'some text','month' => 6,'level' => 10),

    array('msg' => 'some text','month' => 9,'level' => 10)

);

我希望能夠從 12 到 1 對月份進行排序(因為它們是無組織的)通過一些幫助,這是解決方案

I wanted to be able to sort the months from 12 to 1 (since their unorganized) through some help this was the solution

function cmp($a, $b)
{
    if ($a["month"] == $b["month"]) 
    {
       return 0;
    }
    return ($a["month"] < $b["month"]) ? -1 : 1;
}

usort($data, "cmp");

但我不明白函數 cmp 如何對數組進行排序.我試著像這樣打印出每個變量 $a 和 $b:

but i dont understand how the function cmp sorts the array. i tried printing out each variable $a and $b like this:

function cmp($a, $b)
{
   echo "a: ".$a['month']."<br/>";
   echo " b: ".$b['month']."<br/>";
   echo "<br/><br/>";
}

輸出為

a: 3
b: 5

a: 9
b: 3

a: 3
b: 8

a: 6
b: 3

a: 3
b: 12

a: 1
b: 3

a: 3
b: 2

a: 10
b: 3

a: 3
b: 11

a: 7
b: 3

a: 4
b: 3

a: 12
b: 2

a: 5
b: 12

a: 12
b: 11

a: 8
b: 12

a: 5
b: 8

a: 2
b: 11

a: 6
b: 9

a: 7
b: 6

a: 6
b: 4

a: 10
b: 6

a: 1
b: 6

a: 9
b: 4

a: 7
b: 1

a: 10
b: 7

排序是如何工作的以及為什么使用 cmp($a, $b) 是沒有意義的.正如你所看到的,我試圖打印出它的所有流程,但還沒有找到任何解決方案來解決它的工作原理..

it makes no sense to how the sort is working and why cmp($a, $b) is used. i have tried to print out all its processes as you can see but have not come to any solution to how it all works..

謝謝

推薦答案

cmp 函數本身不進行排序.它只是告訴 usort 一個值是否小于、等于或大于另一個值.例如.如果 $a = 5$b = 9 它將返回 1 表示 $b 中的值大于 $b 中的值代碼>$a.

The function cmp itself doesn't do the sorting. It just tells usort if a value is smaller, equal or greater than another value. E.g. if $a = 5 and $b = 9 it will return 1 to indicate that the value in $b is greater than the one in $a.

排序由usor完成.

這篇關于在 php 中 usort() 函數是如何工作的的文章就介紹到這了,希望我們推薦的答案對大家有所幫助,也希望大家多多支持html5模板網!

【網站聲明】本站部分內容來源于互聯網,旨在幫助大家更快的解決問題,如果有圖片或者內容侵犯了您的權益,請聯系我們刪除處理,感謝您的支持!

相關文檔推薦

Joining 2 tables in SELECT(MYSQL/PHP)(在 SELECT(MYSQL/PHP) 中加入 2 個表)
How to make lt;option selected=quot;selectedquot;gt; set by MySQL and PHP?(如何使lt;option selected=“selectedgt;由 MySQL 和 PHP 設置?)
Auto populate a select box using an array in PHP(使用 PHP 中的數組自動填充選擇框)
PHP SQL SELECT where like search item with multiple words(PHP SQL SELECT where like search item with multiple words)
json_encode produce JSON_ERROR_UTF8 from MSSQL-SELECT(json_encode 從 MSSQL-SELECT 產生 JSON_ERROR_UTF8)
MySQL ORDER BY rand(), name ASC(MySQL ORDER BY rand(),名稱 ASC)
主站蜘蛛池模板: 亚洲免费精品一区 | 成人毛片一区二区三区 | 欧美成人免费 | 欧美视频日韩 | 欧美精品v国产精品v日韩精品 | 玖玖视频国产 | 天天天久久久 | 日韩成人av在线播放 | 一区二区免费在线视频 | 欧美日韩在线播放 | 在线观看毛片网站 | 色性av| 国产情侣在线看 | 亚洲国产精品人人爽夜夜爽 | 国产日韩欧美中文字幕 | 91精品国产综合久久小仙女图片 | 久草热在线| 精品自拍视频在线观看 | 午夜国产 | 亚洲一二三区精品 | 特级毛片www| 综合久久综合久久 | www.色综合 | 日韩乱码一二三 | 欧美不卡一区二区三区 | 亚洲欧美中文日韩在线v日本 | 欧美日韩一 | av网站免费在线观看 | 青青久久av北条麻妃海外网 | 国产精品一区二区av | 国产免费福利小视频 | 在线观看毛片网站 | 国产精品久久久久久久免费观看 | 精品久久久久久久久久久久 | 91精品久久久久久久久 | a级大毛片 | 日韩一区中文字幕 | 成人av在线播放 | av高清毛片 | 久久精品色欧美aⅴ一区二区 | 国产真实乱对白精彩久久小说 |