Funções para Sistema de arquivo
PHP Manual

dirname

(PHP 4, PHP 5, PHP 7)

dirnameRetorna o caminho/path do diretório pai

Descrição

string dirname ( string $path [, int $levels = 1 ] )

Dada uma string contendo um caminho para um arquivo ou diretório, esta função irá retornar o caminho do diretório pai que é levels acima do diretório atual.

Parâmetros

path

Um caminho.

No Windows, tanto barra (/) quanto a barra invertida (\) são usadas como caracter separador no path. Em outros ambientes é utilizado a barra (/).

levels

O número de diretórios pai para subir.

Deve ser um inteiro maior que 0.

Valor Retornado

Retorna o caminho do diretório pai. Se não houver nenhuma barra no path, um ponto ('.') é retornado, indicando o diretório atual. Do contrário, a string retornada é o path com qualquer /componente adjacente removido.

Changelog

Versão Descrição
7.0.0 Adicionado o parâmetro opcional levels.
5.0.0 dirname() passou a ser segura para binários

Exemplos

Exemplo #1 exemplo do dirname()

<?php
 
echo dirname("/etc/passwd") . PHP_EOL;
 echo 
dirname("/etc/") . PHP_EOL;
 echo 
dirname(".") . PHP_EOL;
 echo 
dirname("/usr/local/lib"2);

O exemplo acima irá imprimir algo similar à:

 /etc
 / (ou \ no Windows)
 .
 /usr
 

Notas

Nota:

A dirname() opera inocentemente com a string de entrada, e não conhece o filesystem, ou componentes de caminho (path) como o "..".

Nota:

A dirname() é ciente do local (locale), então para que ela veja corretamente o nome do diretório que contenha caracteres multibytes no caminho, o locale certo deve ser definido usando setlocale().

Nota:

A partir do PHP 4.3.0, você receberá frequentemente uma barra ou um ponto da dirname() em situações onde a funcionalidade anterior devolveria uma string vazia.

Confira o exemplo da mudança a seguir:

<?php

//antes do PHP 4.3.0
dirname('c:/'); // retornava '.'

//a partir do PHP 4.3.0
dirname('c:/'); // retorna 'c:'
dirname('c:/Temp/x'); // retorna 'c:/Temp'
dirname('/x'); // retorna '\'

?>

Veja Também


Funções para Sistema de arquivo
PHP Manual