substr_compare
Function • Params and return types changed in PHP 8.0
Binary safe comparison of two strings from an offset, up to length characters.
substr_compare Function synopsis
substr_compare(
string $haystack,
string $needle,
int $offset,
?int $length = null,
bool $case_insensitive = false
): int
Parameters
$haystack
Typestring
The main string being compared.
$needle
Typestring
The secondary string being compared.
$offset
Typeint
The start position for the comparison. If negative, it starts counting from the end of the string.
$length
OptionalType?intDefault valuenull
The length of the comparison. The default value is the largest of the
length of the $needle compared to the length of
$haystack minus the
$offset.
$case_insensitive
OptionalTypeboolDefault valuefalse
If $case_insensitive is true, comparison is
case insensitive.
Return value
Typeint
If $offset is equal to (prior to PHP 7.2.18, 7.3.5) or
greater than the length of $haystack, or the
$length is set and is less than 0,
substr_compare prints a warning and returns
false.
Changes to the substr_compare Function
PHP 8.0
- Return type added:
int - Parameter name of parameter #1 changed:
$main_strto$haystack - Parameter type added for parameter #1 (
$haystack):string - Parameter name of parameter #2 changed:
$strto$needle - Parameter type added for parameter #2 (
$needle):string - Parameter type added for parameter #3 (
$offset):int - Parameter type added for parameter #4 (
$length):?int - Parameter default value added for position #4 (
$length):null - Parameter name of parameter #5 changed:
$case_sensitivityto$case_insensitive - Parameter type added for parameter #5 (
$case_insensitive):bool - Parameter default value added for position #5 (
$case_insensitive):false
substr_compare(
- $main_str,
+ string $haystack,
- $str,
+ string $needle,
- $offset,
+ int $offset,
- $length,
+ ?int $length = null,
- $case_sensitivity
+ bool $case_insensitive = false
- )
+ ): int substr_compare Function Availability
substr_compare Function Availability| PHP Version | Availability |
|---|---|
| PHP 8.6Upcoming Release | Yes |
| PHP 8.5Supported (Latest) | Yes |
| PHP 8.4Supported | Yes |
| PHP 8.3Security-Fixes Only | Yes |
| PHP 8.2Security-Fixes Only | Yes |
| PHP 8.1Unsupported | Yes |
| PHP 8.0Unsupported | Yes |
| PHP 7.4Unsupported | Yes |
| PHP 7.3Unsupported | Yes |
| PHP 7.2Unsupported | Yes |
| PHP 7.1Unsupported | Yes |
| PHP 7.0Unsupported | Yes |
| PHP 5.6Unsupported | Yes |
| PHP 5.5Unsupported | Yes |
| PHP 5.4Unsupported | Yes |
| PHP 5.3Unsupported | Yes |