使用二維數組時,根據特定條件過濾行變得至關重要。本文解決了一個常見的挑戰:透過一個數組中的行過濾另一個數組中的行,同時排除常見行。
問題:
嘗試使用 array_diff_assoc( )來實現此過濾返回公共行而不是預期的唯一行。
<code class="php">$array1 = [ [12 => 'new q sets'], [11 => 'common set'] ]; $array2 = [ [11 => 'common set'] ];</code>
呼叫array_diff_assoc($array1, $array2) 後,輸出仍然包含公共行:
<code class="php">[ [11 => 'common set'] ]</code>
解決方案:
解決方案:<code class="php">$json_array1 = array_map('json_encode', $array1); $json_array2 = array_map('json_encode', $array2); $filtered_rows = array_diff_assoc($json_array1, $json_array2); $filtered_rows = array_map('json_decode', $filtered_rows);</code>
<code class="php">[ [12 => 'new q sets'] ]</code>
以上是如何透過另一個數組行過濾 2D 數組行,同時排除公共行?的詳細內容。更多資訊請關注PHP中文網其他相關文章!