Ben bu (bir veritabanı bağlantısı ile) admin rapor edilemez durumda php hataları yazmak basit bir hata günlüğü oluşturmak için çalışıyorum. Ben bu yazdı:
function errorLog($array)
{
$time = date("F j, Y, g:i a");
$ip = $_SERVER['REMOTE_ADDR'];
$no = $array['e-no'];
$string = $array['e-string'];
$file = $array['e-file'];
$line = $array['e-line'];
$context = $array['e-context'];
$string = "TIME {$time} IP {$ip} ERROR {$no} | {$string} | {$file} | {$line} | {$context}";
if ($handler = fopen('log/log-file.txt', 'a'))
{
fwrite($handler, $string);
fclose($handler);
}
else
{
exit('Fatal Error #0002');
}
}
START EDIT
Fonksiyonu haline gelmiştir
function errorLog($array)
{
$time = date("F j, Y, g:i a");
$ip = $_SERVER['REMOTE_ADDR'];
$type = $array['e-type'];
$string = $array['e-string'];
$file = $array['e-file'];
$line = $array['e-line'];
$context = $array['e-context']
$string = "ON {$time} IP {$ip} ERROR {$type} | {$string} | {$file} | {$line} | {$context}";
if (!error_log($string, 3, 'log/log-file.txt')) { exit('Fatal Error #0002'); }
}
END EDIT
I çalıştırdığınızda ama olsun
Warning: fopen(log/log-file.txt) [function.fopen]: failed to open stream: Permission denied in myfile.php on line 17
Ben bu bir sunucu izin sorun var, ama bir localhost (Mac os x üzerinde xampp) üzerinde çalışıyorum ve ben bu izinleri yönetmek istiyorum. Nasıl ben sadece yazılabilir olması / log yerleştirebilirsiniz? I yapmak ne çalışıyorum yapmanın daha iyi bir yolu var mı?