Charles Yeung Charles Yeung - 2 months ago 14
PHP Question

How to check if a string contains a specific word in PHP?

Consider:

$a = 'How are you?';

if ($a contains 'are')
echo 'true';


Suppose I have the code above, what is the correct way to write the statement
if ($a contains 'are')
?

Answer

You can use the strpos function which is used to find the occurrence of one string inside other:

$a = 'How are you?';

if (strpos($a, 'are') !== false) {
    echo 'true';
}

Note that the use of !== false is deliberate; strpos returns either the offset at which the needle string begins in the haystack string, or the boolean false if the needle isn't found. Since 0 is a valid offset and 0 is "falsey", we can't use simpler constructs like !strpos($a, 'are').