strncasecmp()
strncasecmp() — Binary safe case-insensitive string comparison of the first n characters.
Built-in function of PHP 8.5. The manual lists it as available in PHP 4 >= 4.0.2, PHP 5, PHP 7, PHP 8. This page is the reference card: signature, parameters and return value, plus the changelog and the example the manual provides.
What it does
This function is similar to strcasecmp(), with the difference that you can specify the (upper limit of the) number of characters from each string to be used in the comparison.
Signature
strncasecmp(string $string1, string $string2, int $length): int
Parameters
| Parameter | Type | What it takes |
|---|---|---|
| $string1 | string | The first string. |
| $string2 | string | The second string. |
| $length | int | The length of strings to be used in the comparison. |
Return value
Returns a value less than 0 if string1 is less than string2; a value greater than 0 if string1 is greater than string2, and 0 if they are equal. No particular meaning can be reliably inferred from the value aside from its sign.
Example
A runnable snippet:
$var1 = 'Hello John'; $var2 = 'hello Doe'; if (strncasecmp($var1, $var2, 5) === 0) { echo 'First 5 characters of $var1 and $var2 are equal in a case-insensitive string comparison'; }
Changelog
| Version | Change |
|---|---|
| 8.2.0 | This function is no longer guaranteed to return strlen($string1) - strlen($string2) when string lengths are not equal, but may now return -1 or 1 instead. |
See also
strncmp(), preg_match(), substr_compare(), strcasecmp(), stristr(), substr()
All PHP 8.5 built-in functions
Reference card built from the PHP manual page strncasecmp() (PHP documentation, CC BY 3.0). The page is generated from the manual, so the wording of the parameter and return value text follows php.net.