首頁 > 後端開發 > php教程 > 如何在 PHP 中根據特定鍵的值過濾二維數組?

如何在 PHP 中根據特定鍵的值過濾二維數組?

Patricia Arquette
發布: 2024-12-02 10:55:11
原創
154 人瀏覽過

How Can I Filter a Two-Dimensional Array in PHP Based on a Specific Key's Value?

以特定值過濾二維數組

以特定值過濾多維數組可以透過各種程式設計技術來完成。在 PHP 中,array_filter 函數提供了一個方便的方法來實現此目的。

透過特定鍵值過濾二維數組

過濾二維數組維數組由特定值表示,可以使用 array_filter 函數和回調函數。回調函數應該評估數組的每個元素,如果滿足所需的條件,則傳回 true。

例如,考慮給定的數組,我們要透過值為'CarEnquiry 的'name' 鍵進行過濾':

$arr = [
    [
        'interval' => '2014-10-26',
        'leads' => 0,
        'name' => 'CarEnquiry',
        'status' => 'NEW',
        'appointment' => 0
    ],
    [
        'interval' => '2014-10-26',
        'leads' => 0,
        'name' => 'CarEnquiry',
        'status' => 'CALL1',
        'appointment' => 0
    ],
    [
        'interval' => '2014-10-26',
        'leads' => 0,
        'name' => 'Finance',
        'status' => 'CALL2',
        'appointment' => 0
    ],
    [
        'interval' => '2014-10-26',
        'leads' => 0,
        'name' => 'Partex',
        'status' => 'CALL3',
        'appointment' => 0
    ]
];
登入後複製

以下程式碼片段示範如何篩選數組:

$new = array_filter($arr, function ($var) {
    return ($var['name'] == 'CarEnquiry');
});
登入後複製

在本例中,回呼函數($var['name'] == 'CarEnquiry')檢查每個陣列元素的 'name' 值是否等於 'CarEnquiry'。如果為 true,則該元素包含在過濾數組 ($new) 中。

以可互換值過濾

如果過濾器值需要互換,例如如“CarEnquiry”或“Finance”,可以對回調進行輕微修改函數:

$filterBy = 'CarEnquiry'; // or Finance etc.

$new = array_filter($arr, function ($var) use ($filterBy) {
    return ($var['name'] == $filterBy);
});
登入後複製

透過引入$filterBy 變量,過濾條件變得動態,允許根據需要按不同值進行過濾。

以上是如何在 PHP 中根據特定鍵的值過濾二維數組?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板