Zacky112
Zacky112

Reputation: 8879

PHP: Why do we need string comparison function?

The comparision operators < <= > >= can be applied for strings as well. So why do we need special function for string comparision: strcmp ?

Upvotes: 9

Views: 594

Answers (2)

Artefacto
Artefacto

Reputation: 97835

Because there are several variations:

Depending on the function, the answer to these questions vary:

Additionaly, the comparison operators also give true or false. strcmp gives an integer so it can encode simultaneously whether there's identity (return 0) or, if it not, which is is bigger (depending on whether the value is positive or negative).

Upvotes: 13

ralf.w.
ralf.w.

Reputation: 1696

Although there are no overloads in PHP for strcmp, strcmp results in 3 different values -1 for less than, 0 for equals and +1 for greater than the compared string. With < = <= > >= you will have (sometimes) to do multiple checks one after another.

Upvotes: 3

Related Questions