php數(shù)組比較差異 array_diff_assoc-php函數(shù)

字號(hào):


    上篇文章說(shuō)了array_diff,這次是它的升級(jí)版本,php數(shù)組差異性比較array_diff_assoc函數(shù),用來(lái)比較不同數(shù)組中的key 和value的
    差異并按照索引數(shù)組輸出。
    使用語(yǔ)法跟array_diff一樣
    $newarray = array_diff_assoc($array1,$array2.....);
    要注意的也一樣:array_diff_assoc 不能遞歸對(duì)比,只能是一維數(shù)組,如果數(shù)組嵌套數(shù)組,則將后面的數(shù)組按"數(shù)組"比較,就算不同
    的數(shù)組也會(huì)相同。
    不一樣的而是,這次的比較多了key值,即索引值,如果索引不同,也要返回到數(shù)組中。
    舉例:
    1.有索引的比較
    <?php
    $array = array("key_name"=>"array","key_function"=>"array_diff_assoc");
    $array1 = array("site"=>"forasp","name"=>"網(wǎng)站制作學(xué)習(xí)網(wǎng)","key_function"=>"array_diff_assoc");
    $forasp = array_diff_assoc($array,$array1);
    print_r($forasp);
    ?>
    結(jié)果:
    Array
    (
    [key_name] => array //也就是這個(gè)key-value 值沒(méi)有在后面的數(shù)組中出現(xiàn),是個(gè)不同值。
    )
    2.如果是無(wú)索引的數(shù)組呢
    <?php
    $array = array("forasp","array","array_diff_assoc");
    $array1 = array("forasp","網(wǎng)站制作學(xué)習(xí)網(wǎng)","array_diff_assoc");
    $forasp = array_diff_assoc($array,$array1);
    print_r($forasp);
    ?>
    結(jié)果跟上面的一樣,不同的是這個(gè)key變成了索引
    Array
    (
    [1] => array //也就是這個(gè)key-value 值沒(méi)有在后面的數(shù)組中出現(xiàn),是個(gè)不同值。
    )
    也就是說(shuō)在沒(méi)有索引的數(shù)組中,比較的是索引id 和value。
    array_diff_assoc就介紹完了,它就是array_diff的升級(jí)版本吧。