PHP kullanıcı ev dizini Oku

1 Cevap php

Ben kullanıcının ev dizinini almak için bir yol bulmak mümkün değil (örneğin, {[(0)];} olursa olsun ~ bash noktalarında) PHP, CGI (suPHP) kullanarak. $ _ENV Dizi boştur, ve getenv ('ANA') hiçbir şey döndürür.

Ben bunu yapmak istiyorum nedeni çoğu Linux uygulamaları gibi aksi söyleyerek yapılandırma oid'in olarak, ben, /home/user/.myappnamehere benim uygulama tarafından kullanılan değişken dosyaları bulmak istiyor.


Ben bir şey inşa ettik, ama bu iyi değil; Çalışıyor olsa da, (örneğin / etc / passwd varlığı) sistemi hakkında bir çok varsayar

 $usr = get_current_user();
    $passwd = file('/etc/passwd');
    $var = false;
    foreach ($passwd as $line) {
        if (strstr($line, $usr) !== false) {
            $parts = explode(':', $line);
            $var = realpath($parts[5].'/.report');
            break;
        }
    }

1 Cevap

safemode devre dışı bırakılırsa, bu bir deneyin

$homedir = `cd ~ && pwd`;