PHP uzantısı için zend kullanarak php.ini Okuma (PHP dili değil)

3 Cevap c

Ben zend kullanarak php.ini bazı ayarları okumaya çalışıyorum. Ben kullanıyorum API

long zend_ini_long(char *name, uint name_length, int orig)

Ama her zaman 0 döndürür. Ben iki ismini kontrol ve aynı zamanda ben php.ini belirterek duyuyorum değeri 0'a ardından büyüktür emin yaptık. Ben eksik bir şey var mı?

3 Cevap

 long maxwait = zend_ini_long("max_execution_time",
     sizeof("max_execution_time"), 0);

Sorun ZEND_STRL bu API kullanılması amaçlanan olduğu yol için doğru uzunluğa dönen değil, bu nedenle kullanmak kalmamasıdır.

Ben PHP ile dahili hakimiyet karma tabloların çoğu NUL sonlandırıcı karakter biz sizeof kullanmak neden olan () yerine karma olma dize (genel ikili güvenlik kavramının onun bir parçası), uzunluğu dahil olduğunu varsayalım olduğunu eklemek gerekir strlen () veya sizeof () -1.

Eğer php.ini dosyasını okumak gerekir mi? Belki bilgi phpinfo() ile kullanılabilir?

Ama hiç dosyasını okumak için izin "www kullanıcısı" gerekiyorsa? Eğer izinlerini değiştirirseniz hala 0 çıkmıyor?

Sen standart php işlevini kullanabilirsiniz: ini_get ('var-name');

Örnek:

ini_get('include_path');