Geçerli betiğin mutlak yolunu al
Yüksek ve düşük aradım ve mutlak yolu elde etmek için bilgi içeren birçok farklı çözüm ve değişken elde ettim. Ancak bunlar bazı koşullar altında çalışıyor, bazılarında ise çalışmıyor gibi görünüyor. PHP'de çalıştırılan betiğin mutlak yolunu elde etmenin sihirli bir yolu var mı? Benim için betik komut satırından çalışacak, ancak bir çözüm Apache vb. içinde çalıştırıldığında da aynı şekilde çalışmalıdır.
Açıklama: Başlangıçta çalıştırılan kod, çözümün kodlandığı dosya olmak zorunda değildir.
238
3
FILE__` sabiti size mevcut dosyanın mutlak yolunu verecektir.
Güncelleme:
Soru, o anda çalışan komut dosyası yerine ilk çalıştırılan komut dosyasının nasıl alınacağını soracak şekilde değiştirildi. Bunu yapmanın tek (??) güvenilir yolu
debug_backtrace
işlevini kullanmaktır.Örnekler için:
https://(www.)example.com/subFolder/myfile.php?var=blabla#555
Dikkat!
DIRECTORY_SEPARATOR
Windows tipi barındırma için/
yerine\
döndürür.WordPress için
Bunu dahil edilen bir dosyaya yerleştirirseniz, bu dahil etmenin yolunu yazdırır. Ana betiğin yolunu elde etmek için
__FILE__
yerine$_SERVER['PHP_SELF']
yazın. Ancak PHP_SELF'in bir güvenlik riski olduğunu unutmayın!