Home Backend Development PHP Problem How to determine whether a string exists in an array in php

How to determine whether a string exists in an array in php

Apr 20, 2023 am 09:10 AM

When using arrays in PHP, it is a common requirement to check whether an element exists in the array. When an element in an array is an integer or floating point number, you can use the in_array() function to check whether the element is contained in the array. However, when it comes to checking whether the array contains a string, the function doesn't work properly.

So, how should we check whether a PHP array contains a string?

Method 1: Use the in_array() function to determine

$fruits = array("apple", "banana", "orange");
if (in_array("apple", $fruits)) {
    echo "苹果在数组中";
} else {
    echo "苹果不在数组中";
}
Copy after login

In the above code, the first parameter of the in_array() function is the element to be found, and the second parameter is the array to be searched. . The function returns true if the element being found is in the array; otherwise it returns false.

However, if what you are looking for is a string, the in_array() function will compare the string as the entire element instead of comparing a certain part of the string. This means that the in_array() function will still return false if the array contains elements that are part of the string you are looking for. Therefore, the in_array() function cannot accurately check whether a PHP array contains a string.

Method 2: Use the array_search() function to determine

$fruits = array("apple", "banana", "orange");
$key = array_search("apple", $fruits);
if ($key !== false) {
    echo "苹果在数组中,键名为:" . $key;
} else {
    echo "苹果不在数组中";
}
Copy after login

The array_search() function is similar to the in_array() function and is used to find the specified value in the array. The difference is that the array_search() function returns the key name of the element in the array instead of true/false. Returns false if the element being found is not in the array.

When using the array_search() function, please note that this function is strict and case-sensitive. That is, if you search for a lowercase string in an array where the strings are all uppercase, the array_search() function will return false even if they are identical.

Method 3: Use the in_array() and array_map() functions to determine the joint use

function array_value_exists($needle, $haystack) {
    return in_array($needle, array_map('strtolower', $haystack));
}
Copy after login

This method uses the in_array() and array_map() functions jointly to determine all the strings in the array Convert to lowercase and search the converted array for the specified string. So whether the string is uppercase or lowercase, it can be found in the array.

Conclusion

In PHP, when using an array, you need to choose different methods to check whether the array contains a string according to the actual situation. If the string that needs to be matched is entered by the user, you should consider whether you need to use the third method to avoid problems caused by capitalization.

The above is the detailed content of How to determine whether a string exists in an array in php. For more information, please follow other related articles on the PHP Chinese website!

Statement of this Website
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

Hot Article Tags

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

What are the best practices for deduplication of PHP arrays What are the best practices for deduplication of PHP arrays Mar 03, 2025 pm 04:41 PM

What are the best practices for deduplication of PHP arrays

What Are the Latest PHP Coding Standards and Best Practices? What Are the Latest PHP Coding Standards and Best Practices? Mar 10, 2025 pm 06:16 PM

What Are the Latest PHP Coding Standards and Best Practices?

Can PHP array deduplication take advantage of key name uniqueness? Can PHP array deduplication take advantage of key name uniqueness? Mar 03, 2025 pm 04:51 PM

Can PHP array deduplication take advantage of key name uniqueness?

How Do I Work with PHP Extensions and PECL? How Do I Work with PHP Extensions and PECL? Mar 10, 2025 pm 06:12 PM

How Do I Work with PHP Extensions and PECL?

How to Implement message queues (RabbitMQ, Redis) in PHP? How to Implement message queues (RabbitMQ, Redis) in PHP? Mar 10, 2025 pm 06:15 PM

How to Implement message queues (RabbitMQ, Redis) in PHP?

Does PHP array deduplication need to be considered for performance losses? Does PHP array deduplication need to be considered for performance losses? Mar 03, 2025 pm 04:47 PM

Does PHP array deduplication need to be considered for performance losses?

What are the optimization techniques for deduplication of PHP arrays What are the optimization techniques for deduplication of PHP arrays Mar 03, 2025 pm 04:50 PM

What are the optimization techniques for deduplication of PHP arrays

How to Use Reflection to Analyze and Manipulate PHP Code? How to Use Reflection to Analyze and Manipulate PHP Code? Mar 10, 2025 pm 06:12 PM

How to Use Reflection to Analyze and Manipulate PHP Code?

See all articles