Home  >  Article  >  Backend Development  >  How to determine whether a string exists in a php array

How to determine whether a string exists in a php array

PHPz
PHPzOriginal
2023-04-23 10:06:33548browse

In PHP, determining whether a string exists in an array is a frequently used operation, which can be achieved by using the in_array() function. This function is used to determine whether the specified value exists in the array. If it exists, it returns True, otherwise it returns False. Below we will use sample code to demonstrate how to use the in_array() function to judge array elements.

First, we define an array containing multiple string elements, as shown below:

$fruits = array("Apple", "Banana", "Orange", "Pineapple", "Mango");

Next, we can use the in_array() function to determine whether the array contains the specified characters String, as shown below:

if (in_array("Apple", $fruits)) {
    echo "字符串Apple存在于数组中!";
} else {
    echo "字符串Apple不存在于数组中!";
}

In the above code, we first determine whether the array $fruits contains the string "Apple". If it exists, output "The string Apple exists in the array!", otherwise output " The string Apple does not exist in the array!". It can be seen that using the in_array() function is very convenient. You only need to provide the string to be found and the name of the array to make a judgment.

If you need to determine the position of an element in the array, you can use the array_search() function to find it, for example:

echo "Apple在数组中的位置为:" . array_search("Apple", $fruits);

In the above code, we use the array_search() function to get the elements in the array" Apple" position, the function will return the string "0", indicating that the position of the element in the array is the first.

It is worth noting that for the in_array() function, its second parameter can be a Boolean value (optional), which indicates whether to compare data types. The default is false, that is, only comparison The value of the element without comparing the data type. If you need to compare data types, you can set the second parameter to true, as shown below:

$numbers = array("1", 2, 3, 4, 5);

if (in_array("1", $numbers, true)) {
  echo "'1'存在于数组中(数据类型匹配)";
} else {
  echo "'1'不存在于数组中(数据类型匹配)";
}

if (in_array(1, $numbers, true)) {
  echo "1存在于数组中(数据类型匹配)";
} else {
  echo "1不存在于数组中(数据类型匹配)";
}

In the above code, we use the string "1" and the integer 1 to determine whether there are elements in the array. "1", because the data types do not match, the former judgment result is false, and the latter judgment result is true.

In addition, for large-scale data search, using the in_array() function may be more time-consuming, because this function needs to traverse the entire array to find the specified element. At this time, we can use the isset() function to make a judgment, which is faster than the in_array() function. For example:

$fruits = array("Apple", "Banana", "Orange", "Pineapple", "Mango");

if(isset($fruits[array_search('Apple', $fruits)])) {
  echo "数组中存在字符串'Apple'!";
} else {
  echo "数组中不存在字符串'Apple'!";
}

In the above code, we first use the array_search() function to find the position of the string "Apple" in the array $fruits, and then use the isset() function to judge. If the position exists, then Indicates that the element exists in the array.

To sum up, judging whether a string exists in an array is a very common requirement. PHP provides a variety of ways to achieve it. We can choose different functions to judge according to the actual situation.

The above is the detailed content of How to determine whether a string exists in a php array. 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