dirname

(PHP 4, PHP 5, PHP 7, PHP 8)

dirnameÜst dizinin yolunu döndürür

Açıklama

dirname(string $yol, int $seviye = 1): string

Bir dosyanın veya dizinin yolunu içeren bir dizge verildiğinde, bu işlev en alt seviyedeki dizinden seviye sayıda üstte bulunan dizinin yolunu döndürür.

Bilginize:

dirname() safça girdi dizgesi üzerinde çalışır, ne dosya sistemini ne de ".." gibi yol bileşenlerini bilir.

Dikkat

Windows üzerinde, dirname() geçerli olarak ayarlanmış kod sayfasına göre davranır, bu nedenle çok baytlı karakter yollarında doğru dizin adını görmesi için eşleşen kod sayfasının ayarlanması gerekir. yol, mevcut kod sayfası için geçersiz karakterler içeriyorsa,dirname() işlevinin davranışı tanımsızdır.

Diğer sistemlerde dirname(), yolun ASCII uyumlu kodlamayla kodlanacağını varsayar. Aksi takdirde, işlevin davranışı tanımsızdır.

Bağımsız Değişkenler

yol

Dosya yolu.

Dizin ayırma karakteri olarak Windows üzerinde hem bölü (/) hem de ters bölü (\) çizgisi kullanılabilirken diğer ortamlarda sadece bölü (/) çizgisi kullanılabilir.

seviye

Üstteki dizinlerin seviyesi.

Sıfırdan büyük bir tamsayı olmalıdır.

Dönen Değerler

Üst dizinin yolunu döndürür. yol bağımsız değişkeni hiç bölü çizgisi içermiyorsa, içinde bulunulan dizin anlamında tek bir nokta ('.') döner. Aksi takdirde yol dizgesi son /bileşen kaldırılarak döndürülülür.

Dikkat

Bu işlevi kök dizine ulaşabilen bir döngüde kullanırken dikkatli olun, çünkü bu sonsuz bir döngüye sebep olabilir.

<?php
dirname
('.'); // '.' döner
dirname('/'); // Windows'ta `\` ve *nix'lerde '/'
dirname('\\'); // Windows'ta `\` ve *nix'lerde '.'
dirname('C:\\'); // Windows'ta 'C:\' ve *nix'lerde '.'
?>

Sürüm Bilgisi

Sürüm: Açıklama
7.0.0 seviye bağımsız değişkeni eklendi.

Örnekler

Örnek 1 - dirname() örneği

<?php
echo dirname("/etc/passwd") . PHP_EOL;
echo
dirname("/etc/") . PHP_EOL;
echo
dirname(".") . PHP_EOL;
echo
dirname("C:\\") . PHP_EOL;
echo
dirname("/usr/local/lib", 2);
?>

Yukarıdaki örnek şuna benzer bir çıktı üretir:

/etc
/ (veya Windows üzerinde \)
.
C:\
/usr

Ayrıca Bakınız

  • basename() - Dosya yolunun ucundaki dosya ismi bileşenini döndürür
  • pathinfo() - Bir dosya yolu hakkında bilgi döndürür
  • realpath() - Normalleştirilmiş mutlak dosya yolunu döndürür