查詢

ArrayObject::uasort()函式—用法及示例

「 根據指定的比較函式對陣列物件的元素進行原地排序,並保持元素與鍵的關聯 」


函式名:ArrayObject::uasort()

描述:ArrayObject::uasort() 方法根據指定的比較函式對陣列物件的元素進行原地排序,並保持元素與鍵的關聯。

用法:

ArrayObject::uasort ( callable $cmp_function ) : bool

引數:

  • cmp_function (callable):比較函式,必須接受兩個引數並返回一個整數值。如果第一個引數小於第二個引數,則返回一個負整數;如果第一個引數大於第二個引數,則返回一個正整數;如果兩個引數相等,則返回 0。

返回值:

  • 成功時返回 true,失敗時返回 false。

示例:

$fruits = new ArrayObject([
    'apple' => 2,
    'banana' => 4,
    'cherry' => 1
]);

// 自定義比較函式按值進行排序
$fruits->uasort(function($a, $b) {
    if ($a == $b) {
        return 0;
    }
    return ($a < $b) ? -1 : 1;
});

foreach($fruits as $fruit => $quantity) {
    echo "<li>$fruit: $quantity</li>";
}

輸出:

<li>cherry: 1</li>
<li>apple: 2</li>
<li>banana: 4</li>

說明: ArrayObject::uasort() 方法透過指定的比較函式對陣列物件的值進行排序,並保持鍵值對的關聯。在示例中,我們建立了一個 $fruits 陣列物件,包含水果名作為鍵,數量作為值。然後,我們使用自定義的比較函式來按照數量對水果進行排序,並使用 uasort() 方法進行排序操作。最後,使用 foreach 迴圈遍歷排序後的陣列物件,並將鍵值對以 HTML 列表的形式輸出。

補充糾錯
熱門PHP函式
分享連結