Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk mendapatkan nilai yang berbeza daripada dua tatasusunan dalam php

Bagaimana untuk mendapatkan nilai yang berbeza daripada dua tatasusunan dalam php

青灯夜游
青灯夜游asal
2022-09-01 19:32:002798semak imbas

3 cara untuk mendapatkan nilai yang berbeza: 1. Bandingkan nilai kunci tatasusunan dan kembalikan tatasusunan perbezaan yang mengandungi nilai yang berbeza, sintaksnya ialah "array_diff(array1, array2)". 2. Bandingkan nama kunci tatasusunan dan kembalikan tatasusunan perbezaan yang mengandungi nilai yang berbeza Sintaksnya ialah "tatasusunan_diff_key(tatasusunan 1, tatasusunan 2)". 3. Bandingkan nama kunci dan nilai kunci tatasusunan, dan kembalikan tatasusunan perbezaan yang mengandungi nilai yang berbeza, sintaksnya ialah "array_diff_assoc(array 1, array 2)".

Bagaimana untuk mendapatkan nilai yang berbeza daripada dua tatasusunan dalam php

Persekitaran pengendalian tutorial ini: sistem Windows 7, PHP versi 8.1, komputer DELL G3

php memperoleh nilai yang berbeza​​​ daripada dua tatasusunan, iaitu perbandingan Dua tatasusunan, dapatkan set perbezaan.

Terdapat tiga situasi dalam PHP membandingkan tatasusunan: membandingkan hanya nilai kunci, membandingkan hanya nama kunci dan membandingkan nilai kunci dan nama kunci. Sepadan dengan tiga fungsi terbina dalam:

  • array_diff()

  • array_diff_key()

  • array_diff_assoc ()

Mari kita pelajari tentangnya melalui contoh:

1 Gunakan fungsi array_diff()--bandingkan nilai utama ​​of array

array_diff() fungsi digunakan untuk membandingkan nilai dua (atau lebih) tatasusunan dan mengembalikan perbezaannya.

array_diff(array1,array2,array3...);

Fungsi ini membandingkan nilai ​​​​bagi dua (atau lebih) tatasusunan (kunci=>nilai dalam nilai), dan mengembalikan tatasusunan perbezaan, yang merangkumi semua nilai dalam dibandingkan Nilai yang terdapat dalam tatasusunan (array1), tetapi tidak dalam mana-mana tatasusunan parameter lain (array2 atau array3, dsb.).

<?php
header("Content-type:text/html;charset=utf-8");
$arr1=array(1,2,3,4,5,6);
$arr2=array(2,4,6,8,10,12);
var_dump($arr1);
var_dump($arr2);

echo "两个数组的不同值:";
$result=array_diff($arr1,$arr2);
var_dump($result);
?>

Bagaimana untuk mendapatkan nilai yang berbeza daripada dua tatasusunan dalam php

2 Gunakan fungsi array_diff_key() - bandingkan nama kunci tatasusunan

fungsi array_diff_key() digunakan. Membandingkan kunci dua (atau lebih) tatasusunan dan mengembalikan perbezaannya.

array_diff_key(array1,array2,array3...);

Fungsi ini membandingkan nama kunci dua (atau lebih) tatasusunan dan mengembalikan tatasusunan perbezaan, yang merangkumi semua kunci dalam tatasusunan yang dibandingkan (tatasusunan1), tetapi tidak dalam mana-mana nama Kunci dalam parameter lain tatasusunan (tatasusunan2 atau tatasusunan3, dsb.).

<?php
header("Content-type:text/html;charset=utf-8");
$arr1=array("a"=>"red","b"=>"green","c"=>"blue","d"=>"yellow");
$arr2=array("a"=>"orange","b"=>"green","e"=>"red","r"=>"yellow");
var_dump($arr1);
var_dump($arr2);

echo "两个数组的不同值:";
$result=array_diff_key($arr1,$arr2);
var_dump($result);
?>

Dalam contoh di atas, dua nama utama dalam tatasusunan $arr1 dan tatasusunan $arr2 adalah berbeza Berdasarkan tatasusunan $arr1, nilai-nilainya ""c"=>"blue"" dan ". ", jadi hasil output ialah: "d"=>"yellow"

Bagaimana untuk mendapatkan nilai yang berbeza daripada dua tatasusunan dalam php

3. Gunakan fungsi array_diff_assoc() - bandingkan nama kunci dan nilai kunci daripada tatasusunan

array_diff_assoc() fungsi digunakan untuk membandingkan nama kunci dan nilai kunci dua (atau lebih) tatasusunan dan mengembalikan set perbezaan.

array_diff_assoc(array1,array2,array3...);
Fungsi ini membandingkan nama kunci dan nilai kunci ​​​​bagi dua (atau lebih) tatasusunan dan mengembalikan tatasusunan perbezaan, yang merangkumi segala-galanya dalam tatasusunan yang dibandingkan (tatasusunan1), tetapi nama Kunci dan nilai yang tidak terdapat dalam mana-mana tatasusunan parameter lain (array2 atau array3, dsb.).

<?php
header("Content-type:text/html;charset=utf-8");
$arr1=array("a"=>"red","b"=>"green","c"=>"blue","d"=>"yellow");
$arr2=array("a"=>"orange","b"=>"green","e"=>"red","r"=>"yellow");
var_dump($arr1);
var_dump($arr2);

echo "两个数组的不同值:";
$result=array_diff_assoc($arr1,$arr2);
var_dump($result);
?>
Dalam contoh di atas, tatasusunan $arr1 dan tatasusunan $arr2 dibandingkan " dan "

akan diperolehi ", ""a"=>"red"", jadi hasil output ialah: "c"=>"blue""d"=>"yellow"

Bagaimana untuk mendapatkan nilai yang berbeza daripada dua tatasusunan dalam php Pembelajaran yang disyorkan: "

Tutorial Video PHP

"

Atas ialah kandungan terperinci Bagaimana untuk mendapatkan nilai yang berbeza daripada dua tatasusunan dalam php. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn