如何從平面數組中保留具有匹配列值的數組行?

Linda Hamilton
發布: 2024-10-24 04:17:02
原創
435 人瀏覽過

How to Retain Array Rows with Matching Column Values from a Flat Array?

從單獨的平面數組中保留具有匹配列值的數組行

給定一個具有多列的數組$arr1 和第一個第一個數字二個平面數組$ arr2 包含特定列值的列表,目標是過濾$arr1 並僅提取特定列中的值與$arr2 中的元素相符的行。

解決方案:

為了有效地執行此任務,可以使用 array_uintersect()。此本機函數在比較期間利用排序演算法來提高執行速度。它需要兩個數組和一個自訂回調函數來確定比較邏輯。

在提供的程式碼中,回呼函數利用陣列解構來存取 $arr1 和 $arr2 的每個元素的 id 欄位。如果 id 列不存在,則預設為參數的值。

比較檢查兩個陣列中的 id 值是否相等,確保 $arr1 中的行與 $arr2 中的值相符。結果是僅包含 $arr1 中所需行的新陣列。

由於最小化的函數呼叫和最佳化的執行時間,這種方法為 in_array() 的迭代呼叫提供了卓越的效能。

以上是如何從平面數組中保留具有匹配列值的數組行?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!