Home >Backend Development >PHP Tutorial >PHP method to determine whether a string exists in an array element_PHP tutorial
Method 1: Use in_array(value,array,type)
type optional. If this parameter is set to true, it is checked whether the type of the searched data and the value of the array are the same.
Method 2:
array_key_exists 'array_key_exists() function determines whether the specified key exists in an array. If the key exists, it returns true, otherwise it returns false. array_key_exists(key,array
Method 3:
array_search() function is the same as in_array(), searching for a key value in the array. If the value is found, the key of the matching element is returned. If not found, returns false. array_search(value, array, strict), when the amount of data is relatively large, it is more appropriate to use array_key_exists, but it takes up a lot of memory,
The array structures are: array(1, 2, 3, ..) and array(1 => true, 2 => false, ..), and the memory usage ratio is 1:2.
The details are related to the internal implementation. The first and second data structures in PHP are similar, both are associative arrays.
Other supplements:
To find whether an element is in an array, there are three methods:
in_array 'Function searches for a given value in an array. in_array(value,array,type)type optional. If this parameter is set to true, it is checked whether the type of the searched data and the value of the array are the same.
array_key_exists 'array_key_exists() function determines whether the specified key exists in an array. If the key exists, it returns true, otherwise it returns false.
array_key_exists(key,array)
array_search 'array_search() function is the same as in_array(), searching for a key value in an array. If the value is found, the key of the matching element is returned. If not found, returns false.
array_search(value,array,strict)
From this point of view, when the amount of data is not large, such as less than 1000, any search method can be used, and it will not become a bottleneck;
When the amount of data is relatively large, it is more appropriate to use array_key_exists.
Of course the memory occupied by array_key_exists here is relatively large. According to calculations
the array structure is: array(1, 2, 3, ..) and array(1 => true, 2 => false, ..)
Their memory usage ratio is 1:2;
This is related to the internal implementation. In fact, the first and second data structures in PHP are similar, both are associative arrays.