簡體   English   中英

如何檢查兩個數組是否相同

[英]How can I check if two array are same

這是我的數組

[51] => Array
    (
        [171] => 34
        [170] => Adult
        [168] => 32
        [quantity] => 1
    )

[52] => Array
    (
        [171] => 34
        [170] => Adult
        [168] => 32
        [quantity] => 1
    )

現在,如果除數量外所有鍵和值都相同,則將添加數量。

例如:

 [51] => Array
    (
        [171] => 34
        [170] => Adult
        [168] => 32
        [quantity] => 2
    )

有什么方法可以搜索動態鍵。 請幫忙。

假設

$arr1 = Array(
    171 => 34
    170 => Adult
    168 => 32
    'quantity' => 1
);

$arr2 = Array(
    171 => 34
    170 => Adult
    168 => 32
    'quantity' => 1
);

您可以執行以下操作:

$tmp1 = $arr1;
unset($tmp1['quantity']);

$tmp2 = $arr2;
unset($tmp2['quantity']);

if($tmp1 == $tmp2) {
  // do what you like
}

當您執行$tmp1 == $tmp2它會通過鍵和值比較兩個數組,請參見http://php.net/manual/en/language.operators.array.php

$ a == $ b如果$ a和$ b具有相同的鍵/值對,則為TRUE。

$ a === $ b如果$ a和$ b具有相同順序的相同鍵/值對和相同類型,則為TRUE。

您可以使用array_diff_assoc()函數...它根據鍵檢查數組

   <?php
      $array1 = array("a" => "green", "b" => "brown", "c" => "blue", "red");
      $array2 = array("a" => "green", "yellow", "red");
      $result = array_diff_assoc($array1, $array2);
      print_r($result);
    ?>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM