dirname

FunctionParams and return types changed in PHP 8.0

Returns a parent directory's path.

PHP 5
PHP 7.0
Improved
PHP 7.1-7.4
PHP 8.0
Improved
PHP 8.1
PHP 8.2-8.3
PHP 8.4
PHP 8.5
PHP 8.6

dirname Function synopsis

dirname(string $path, int $levels = 1): string

Parameters

$path

Typestring

A path.

$path accepts one of the following constant values:

$levels

OptionalTypeintDefault value1

The number of parent directories to go up.

Return value

Typestring

Returns the path of a parent directory. If there are no slashes in $path, a dot ('.') is returned, indicating the current directory. Otherwise, the returned string is $path with any trailing /component removed.

Be careful when using this function in a loop that can reach the
top-level directory as this can result in an infinite loop.

Changes to the dirname Function

PHP 8.0

  • Return type added: string
  • Parameter type added for parameter #1 ($path): string
  • Parameter type added for parameter #2 ($levels): int
  • Parameter default value added for position #2 ($levels): 1
- dirname($path, $levels)
+ dirname(string $path, int $levels = 1): string

PHP 7.0

  • Optional parameter added - #2: $levels
- dirname($path)
+ dirname($path, $levels)

dirname 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