Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk membandingkan tatasusunan dan memadamnya dalam php

Bagaimana untuk membandingkan tatasusunan dan memadamnya dalam php

PHPz
PHPzasal
2023-04-24 09:12:39705semak imbas

PHP ialah bahasa pengaturcaraan sebelah pelayan yang popular yang digunakan secara meluas semasa membangunkan aplikasi web. Dalam PHP, selalunya perlu melakukan operasi seperti membandingkan, menggabungkan dan memadam tatasusunan untuk menjadikan data tatasusunan lebih lengkap dan munasabah. Dalam artikel ini, anda akan belajar cara membandingkan tatasusunan dan memadamnya dalam PHP.

  1. Membandingkan tatasusunan

Untuk perbandingan tatasusunan PHP, anda boleh menggunakan beberapa fungsi terbina dalam untuk mencapainya. Antaranya, tiga fungsi berikut terlibat terutamanya:

  • array_diff: digunakan untuk mengembalikan perbezaan antara dua tatasusunan;
  • array_intersect: digunakan untuk mengembalikan perbezaan antara dua tatasusunan Item persimpangan;
  • array_diff_key: digunakan untuk mengembalikan item perbezaan nilai kunci antara dua tatasusunan.

Ambil fungsi array_diff sebagai contoh, dengan mengandaikan kita mempunyai dua tatasusunan:

$colors1 = array("red", "green", "blue");
$colors2 = array("black", "red", "yellow");

Kemudian, kita boleh menggunakan kod berikut untuk membandingkan item yang berbeza antara dua tatasusunan, Dan kembalikan hasilnya:

$result = array_diff($colors1, $colors2);
print_r($result);

Hasil output ialah:

Array
(
    [1] => green
    [2] => blue
)

Begitu juga, anda boleh menggunakan fungsi array_intersect untuk membandingkan item persilangan antara dua tatasusunan. Selain itu, fungsi array_diff_key boleh digunakan untuk membandingkan perbezaan nilai utama.

  1. Memadamkan Elemen Tatasusunan

Dalam PHP, terdapat banyak cara untuk memadamkan elemen tatasusunan. Beberapa kaedah biasa disenaraikan di bawah:

  • fungsi tidak ditetapkan: Anda boleh memadamkan elemen tatasusunan yang ditentukan melalui fungsi yang tidak ditetapkan, seperti:
$fruit = array('apple', 'orange', 'banana', 'grape');
unset($fruit[2]); // 删除数组中的 banana 元素
  • fungsi array_splice: Digunakan untuk memadam elemen dalam julat yang ditentukan dalam tatasusunan, sintaksnya ialah:
array_splice($array, $offset, $length);

Antaranya, $array ialah tatasusunan yang akan dikendalikan; kedudukan, dikira daripada 0; $length ialah bilangan elemen yang akan dipadamkan. Kod sampel adalah seperti berikut:

$fruit = array('apple', 'orange', 'banana', 'grape');
array_splice($fruit, 1, 2); // 删除数组中的 orange 和 banana 元素
  • fungsi array_filter: Anda boleh menapis elemen dalam tatasusunan melalui fungsi panggil balik dan mengembalikan set elemen yang memenuhi syarat. Contohnya:
$fruit = array('apple', 'orange', 'banana', 'grape');
$result = array_filter($fruit, function($item) {
    return $item != 'banana'; // 过滤掉元素值为 banana 的元素
});
print_r($result);
  1. Bandingkan tatasusunan dan padamkan elemen yang ditentukan

Jika anda perlu membandingkan dua tatasusunan dalam PHP dan memadamkan elemen yang ditentukan, anda boleh menggabungkan Kaedah di atas untuk membandingkan tatasusunan dan memadamkan elemen tatasusunan melaksanakan logik berikut:

  • Bandingkan dua tatasusunan untuk menentukan elemen yang perlu dipadamkan
  • Gunakan fungsi unset atau array_splice pada elemen yang perlu dipadamkan.

Kod contoh:

$fruit1 = array('apple', 'orange', 'banana', 'grape');
$fruit2 = array('banana', 'grape', 'watermelon');
$intersect = array_intersect($fruit1, $fruit2); // 获取交集
foreach ($intersect as $value) {
    unset($fruit1[array_search($value, $fruit1)]);
}
print_r($fruit1);

Dalam kod di atas, mula-mula gunakan fungsi array_intersect untuk mendapatkan persilangan antara dua tatasusunan, kemudian gunakan gelung foreach untuk melintasi persimpangan, dan gunakan Fungsi unset memadamkan elemen yang ditentukan daripada tatasusunan fruit1. Hasil keluaran akhir ialah:

Array
(
    [0] => apple
    [1] => orange
)

Jika elemen yang akan dipadamkan terletak di tengah tatasusunan, anda boleh menggunakan fungsi array_splice untuk mencapainya.

Ringkasan

Artikel ini terutamanya memperkenalkan cara membandingkan tatasusunan dan memadamkannya dalam PHP. Dalam proses pembangunan sebenar, membandingkan dan memadam elemen tatasusunan adalah operasi yang sangat biasa, terutamanya apabila sejumlah besar data perlu diproses. Saya berharap pembaca dapat menguasai kemahiran dan idea asas menggunakan PHP untuk mengendalikan tatasusunan melalui pengenalan artikel ini.

Atas ialah kandungan terperinci Bagaimana untuk membandingkan tatasusunan dan memadamnya 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