substr

FunctionParams and return types changed in PHP 8.0

Return part of a string.

PHP 5
PHP 7
PHP 8.0
Improved
PHP 8.1
PHP 8.2-8.3
PHP 8.4
PHP 8.5
PHP 8.6

substr Function synopsis

substr(
    string $string,
    int $offset,
    ?int $length = null
  ): string

Parameters

$string

Typestring

The input string.

$offset

Typeint

If $offset is non-negative, the returned string will start at the $offset'th position in $string, counting from zero. For instance, in the string 'abcdef', the character at position 0 is 'a', the character at position 2 is 'c', and so forth.

$length

OptionalType?intDefault valuenull

If $length is given and is positive, the string returned will contain at most $length characters beginning from $offset (depending on the length of $string).

Return value

Typestring

Returns the extracted part of $string, or an empty string.

Changes to the substr Function

PHP 8.0

  • Return type added: string
  • Parameter name of parameter #1 changed: $str to $string
  • Parameter type added for parameter #1 ($string): string
  • Parameter name of parameter #2 changed: $start to $offset
  • Parameter type added for parameter #2 ($offset): int
  • Parameter type added for parameter #3 ($length): ?int
  • Parameter default value added for position #3 ($length): null
  substr(
-     $str,
+     string $string,
-     $start,
+     int $offset,
-     $length
+     ?int $length = null
-   )
+   ): string

substr Function Availability

PHP VersionAvailability
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