Home  >  Article  >  Backend Development  >  How to check if each value exists in an array in php

How to check if each value exists in an array in php

PHPz
PHPzOriginal
2023-04-25 09:05:41428browse

In PHP, querying whether each value exists in an array is a common requirement. This usually involves looping through an array and checking whether each value exists. However, in actual situations, we need more efficient methods to complete this task to save time and resources.

In PHP, we can use the in_array() function and array_diff() function to complete this task. in_array() function is used to check whether a specific element exists in an array. Returns true if present, false otherwise. The array_diff() function is used to calculate the difference between two arrays and returns the elements that are in the first array but not in the second array.

Here is sample code on how to use these functions to query whether each value exists in an array:

<?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.";
}
?>

In this example, we first define a list of values ​​​​to query and a value to query. The array to query. We then use a loop using the in_array() function to check if each value exists in the array. If the value does not exist in the array, it is added to the missing array. Finally, we check the missing array and output any missing values.

We can also use the array_diff() function to accomplish the same task, but more efficiently:

<?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.";
}
?>

In this example, we use the array_diff() function to calculate the $values ​​and $fruits arrays difference between. This will return elements that are in the $values ​​array, but not in the $fruits array. If any values ​​are missing, we output them. Otherwise, we output that all values ​​are present in the array.

In summary, it is feasible to use the in_array() function or array_diff() function to query whether each value in the array exists. These functions are all PHP built-in functions, so there is no need to install any additional libraries or plugins to use them. Personal preference is to use the array_diff() function because it is more efficient. Whichever method you choose should help you quickly query whether each value is present in the array.

The above is the detailed content of How to check if each value exists in an array in php. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn