strcmp()

strcmp() — Binary safe string comparison.

Built-in function of PHP 8.5. The manual lists it as available in PHP 4, 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

Note that this comparison is case sensitive. For case-insensitive comparison, see strcasecmp().

Signature

strcmp(string $string1, string $string2): int

Parameters

ParameterTypeWhat it takes
$string1stringThe first string.
$string2stringThe second string.

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"; $var2 = "hello"; if (strcmp($var1, $var2) !== 0) { echo '$var1 is not equal to $var2 in a case sensitive string comparison'; }

Changelog

VersionChange
8.2.0This 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

strcasecmp(), strcoll(), substr_compare(), strncmp(), strstr(), preg_match(), levenshtein(), metaphone(), similar_text(), soundex()

All PHP 8.5 built-in functions

Reference card built from the PHP manual page strcmp() (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.