Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk menyemak sama ada setiap nilai wujud dalam tatasusunan dalam php

Bagaimana untuk menyemak sama ada setiap nilai wujud dalam tatasusunan dalam php

PHPz
PHPzasal
2023-04-25 09:05:41428semak imbas

Dalam PHP, menanyakan sama ada setiap nilai wujud dalam tatasusunan ialah keperluan biasa. Ini biasanya melibatkan gelung melalui tatasusunan dan menyemak sama ada setiap nilai wujud. Walau bagaimanapun, dalam situasi sebenar, kami memerlukan kaedah yang lebih cekap untuk menyelesaikan tugasan ini bagi menjimatkan masa dan sumber.

Dalam PHP, kita boleh menggunakan fungsi in_array() dan fungsi array_diff() untuk menyelesaikan tugasan ini. in_array() fungsi digunakan untuk menyemak sama ada unsur tertentu wujud dalam tatasusunan. Mengembalikan benar jika ada, palsu sebaliknya. Fungsi array_diff() digunakan untuk mengira perbezaan antara dua tatasusunan dan mengembalikan elemen yang berada dalam tatasusunan pertama tetapi tidak dalam tatasusunan kedua.

Berikut ialah contoh kod tentang cara menggunakan fungsi ini untuk bertanya sama ada setiap nilai hadir dalam tatasusunan:

<?php
// 准备要查询的值列表
$values = array(&#39;apple&#39;, &#39;banana&#39;, &#39;orange&#39;);

// 准备要查询的数组
$fruits = array(&#39;apple&#39;, &#39;banana&#39;, &#39;peach&#39;, &#39;kiwi&#39;, &#39;orange&#39;);

// 检查每个值是否存在于数组中
$missing = array();
foreach ($values as $value) {
   if (!in_array($value, $fruits)) {
      $missing[] = $value;
   }
}

// 输出缺失的值
if (count($missing) > 0) {
   echo "The following values are missing: " . implode(', ', $missing);
} else {
   echo "All values are present in the array.";
}
?>

Dalam contoh ini kita mula-mula menentukan senarai nilai untuk ditanya dan Tatasusunan untuk pertanyaan. Kami kemudian menggunakan gelung menggunakan fungsi in_array() untuk menyemak sama ada setiap nilai wujud dalam tatasusunan. Jika nilai tidak wujud dalam tatasusunan, ia akan ditambahkan pada tatasusunan yang hilang. Akhir sekali, kami menyemak tatasusunan yang hilang dan mengeluarkan sebarang nilai yang hilang.

Kami juga boleh menggunakan fungsi array_diff() untuk menyelesaikan tugas yang sama, tetapi dengan lebih cekap:

<?php
// 准备要查询的值列表
$values = array(&#39;apple&#39;, &#39;banana&#39;, &#39;orange&#39;);

// 准备要查询的数组
$fruits = array(&#39;apple&#39;, &#39;banana&#39;, &#39;peach&#39;, &#39;kiwi&#39;, &#39;orange&#39;);

// 计算数组之间的差异
$missing = array_diff($values, $fruits);

// 输出缺失的值
if (count($missing) > 0) {
   echo "The following values are missing: " . implode(', ', $missing);
} else {
   echo "All values are present in the array.";
}
?>

Dalam contoh ini, kami menggunakan fungsi array_diff() untuk mengira $values ​​​dan $ Perbezaan antara susunan buah-buahan. Ini akan mengembalikan elemen yang berada dalam tatasusunan $values ​​​​, tetapi tidak dalam tatasusunan $fruits. Jika ada nilai yang hilang, kami mengeluarkannya. Jika tidak, kami mengeluarkan bahawa semua nilai hadir dalam tatasusunan.

Ringkasnya, ia boleh digunakan untuk menggunakan fungsi in_array() atau array_diff() untuk bertanya sama ada setiap nilai dalam tatasusunan wujud. Fungsi ini adalah semua fungsi terbina dalam PHP, jadi tidak perlu memasang sebarang perpustakaan atau pemalam tambahan untuk menggunakannya. Keutamaan peribadi adalah menggunakan fungsi array_diff() kerana ia lebih cekap. Mana-mana kaedah yang anda pilih akan membantu anda membuat pertanyaan dengan cepat sama ada setiap nilai wujud dalam tatasusunan.

Atas ialah kandungan terperinci Bagaimana untuk menyemak sama ada setiap nilai wujud dalam 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