In the PHP language, arrays are a very important data type that are often used. When using arrays, we often encounter a problem, that is, how to determine whether an array contains a certain element. This article will introduce how to use PHP arrays to determine whether an array contains a specified element.
1. Use the in_array() function
In PHP, a built-in function in_array() is provided to determine whether a value exists in an array. The in_array() function accepts two parameters, the first is the value to be found, and the second is the array to be found.
For example, to determine whether the array $arr contains an element with a value of 42, you can use the following code:
$arr = array(1, 2, 3, 4, 42, 5); if (in_array(42, $arr)) { echo "数组中包含值为 42 的元素 "; } else { echo "数组中不包含值为 42 的元素 "; }
The output result is:
数组中包含值为 42 的元素
Note that the in_array() function Only integer and string type values can be judged whether they exist in the array. For other types of values, such as arrays, objects, resources, etc., the in_array() function cannot be used to judge.
2. Use the array_search() function
If we need to determine the position of an element in the array, we can use the array_search() function. The array_search() function accepts two parameters, the first is the value to be searched, and the second is the array to be searched. If the element is found, the function returns the index of the element in the array, otherwise it returns false.
For example, to determine whether the array $arr contains an element with a value of 42 and obtain the position of the element in the array, you can use the following code:
$arr = array(1, 2, 3, 4, 42, 5); $index = array_search(42, $arr); if ($index !== false) { echo "数组中包含值为 42 的元素,位置为 $index "; } else { echo "数组中不包含值为 42 的元素 "; }
The output result is:
数组中包含值为 42 的元素,位置为 4
It should be noted that the position index returned by the array_search() function starts from 0, not from 1, that is, if the position of an element in the array is 3, then the array_search() function returns The value should be 2 because array subscripts start at 0.
3. Use the key_exists() function
In addition to the above two methods, we can also use the key_exists() function to determine whether an array contains a specified key. The key_exists() function accepts two parameters, the first is the key to be searched, and the second is the array to be searched.
For example, to determine whether the array $arr contains an element with the key 'foo', you can use the following code:
$arr = array('foo' => 'bar', 'baz' => 'qux'); if (key_exists('foo', $arr)) { echo "数组中包含键为 'foo' 的元素 "; } else { echo "数组中不包含键为 'foo' 的元素 "; }
The output result is:
数组中包含键为 'foo' 的元素
It should be noted that , the key_exists() function can only be used to determine whether an array contains a key, but not the value.
4. Use the isset() function
In PHP, you can also use the isset() function to determine whether an array contains a specified key. The isset() function accepts one parameter, which is the key name to be determined. The function returns true if the key exists, false otherwise.
For example, to determine whether the array $arr contains an element with the key 'foo', you can use the following code:
$arr = array('foo' => 'bar', 'baz' => 'qux'); if (isset($arr['foo'])) { echo "数组中包含键为 'foo' 的元素 "; } else { echo "数组中不包含键为 'foo' 的元素 "; }
The output result is:
数组中包含键为 'foo' 的元素
It should be noted that , isset() function is used to determine whether the variable has been set. If the variable does not exist or the value is null, the function returns false.
To sum up, we can use the in_array() function, array_search() function, key_exists() function and isset() function to determine whether an array contains a specified element. Different methods are suitable for different situations, and developers can choose to use them according to specific situations.
The above is the detailed content of Does the php array contain. For more information, please follow other related articles on the PHP Chinese website!