realpath

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

realpathNormalleştirilmiş mutlak dosya yolunu döndürür

Açıklama

realpath(string $yol): string|false

realpath() işlevi tüm sembolik bağları genişletir ve /./, /../ gösterimlerini çözümleyip belirtilen yol'a bir / ekler ve normalleştirilmiş mutlak dosya yolu olarak döndürür.

Bağımsız Değişkenler

yol

Sınanacak dosya yolu.

Bilginize:

Bir yolun belirtilmesi gerekirse de, değer boş bir dizge de olabilir. Bu durumda değer, geçerli dizin olarak yorumlanır.

Dönen Değerler

Başarı durumunda normalleştirilmiş mutlak dosya yolunu döndürür. Sonuç hiçbir sembolik bağ, /./ veya /../ bileşenlerini içermez. Ayrıca, sondaki \ veya / kaldırılır.

Başarısızlık durumunda, örneğin dosya mevcut olmadığında realpath() false ile döner.

Bilginize:

Çalışan betik dosya hiyerarşisi içindeki tüm dizinlerde çalıştırılabilir izinlerine sahip olmalıdır, aksi takdirde realpath() false döndürür.

Bilginize:

Harf büyüklüğüne duyarsız dosya sistemlerinde realpath() karakter büyüklüklerini aynı yapabileceği gibi olduğu gibi de bırakabilir.

Bilginize:

realpath() işlevi yolun gerçek değil de sanal olduğu bir Phar içindeki bir dosya için işlem yapmaz.

Bilginize:

Windows'ta, dizin kavşakları ve sembolik bağları yalnızca bir seviye genişletilir.

Bilginize: PHP'nin tamsayı türü, işaretli tamsayı türü olduğundan 32 bitlik tamsayıların kullanıldığı sistemlerde bazı dosya sistemi işlevleri 2GB'tan büyük dosyalarda beklenmedik sonuçlar verebilir.

Örnekler

Örnek 1 - realpath() örneği

<?php
chdir
('/var/log/');
echo
realpath('./../../etc/passwd');

echo
realpath('/tmp/') . PHP_EOL;
?>

Yukarıdaki örneğin çıktısı:

/etc/passwd
/tmp

Örnek 2 - Windows'ta realpath()

Windows'ta realpath() Unix tarzı dosya yolunu Windows tarzı dosya yoluna dönüştürür.

<?php
echo realpath('/windows/system32'), PHP_EOL;

echo
realpath('C:\Program Files\\'), PHP_EOL;
?>

Yukarıdaki örneğin çıktısı:

C:\WINDOWS\System32
C:\Program Files

Ayrıca Bakınız

  • basename() - Dosya yolunun ucundaki dosya ismi bileşenini döndürür
  • dirname() - Üst dizinin yolunu döndürür
  • pathinfo() - Bir dosya yolu hakkında bilgi döndürür