હેલો
Unter normalen Umständen schreibt die Funktion. Wenn die Datei ohne Inhalt angelegt wird, dann ist das aus PHP-Sicht eigenartig, denn eigentlich wird sie ja durch das file_put_contents() angelegt und das mit Inhalt.
Ich habe den Support schon angeschrieben, erste Antwort war eine Rückfrage, was das Problem sei? Fängt ja gut an mit dem Support. Ich habe in der Zwischenzeit die Funktion etwas verfeinert.
/**
* Funktionsaufrufe mitloggen
*/
define('TEMPNAME', tempnam("./tmp", "script_log"));
$_actual_timestamp = time(); // Zeit des ersten Seitenaufrufes festhalten, um einmalige Dateinamen zu erzeugen
/**
* script_log (script_log ('config.php', $_actual_timestamp, __LINE__, __FILE__);)
@return
27\.07.2013, 15:31:41, Function: config.php, Line: 31, File: D:\xampp\anonymous\speedtab\index.php, Referer: /
27\.07.2013, 15:31:41, Function: html-tmpl.php, Line: 34, File: D:\xampp\anonymous\speedtab\index.php, Referer: /
27\.07.2013, 15:31:41, Function: formlib.php, Line: 37, File: D:\xampp\anonymous\speedtab\index.php, Referer: /
27\.07.2013, 15:31:41, Function: loginformular.php, Line: 40, File: D:\xampp\anonymous\speedtab\index.php, Referer: /
27\.07.2013, 15:31:42, Function: Output starts, Line: 145, File: D:\xampp\anonymous\speedtab\index.php, Referer: /
27\.07.2013, 15:31:42, Function: Output ends, Line: 295, File: D:\xampp\anonymous\speedtab\index.php, Referer: /
*/
function script_log ($_function, $_timestamp, $_line, $_file, $_move=false)
{
// Status-Text
$_ret = sprintf('%1$s, Function: %2$s, Line: %3$s, File: %4$s, Referer: %5$s' . "\n"
, strftime("%d.%m.%Y, %H:%M:%S", time())
, $_function
, $_line
, $_file
, $_SERVER['REQUEST_URI']
);
$_text = $_ret;
// Datei erzeugen; falls vorhanden, Daten anhängen
if (file_exists(TEMPNAME)) {
$_text = file_get_contents(TEMPNAME);
$_text .= $_ret;
}
file_put_contents(TEMPNAME, $_text);
// Scriptende, Datei mit Zeitstempel ins Archiv verschieben
if ($_move) {
$_LASTFILENAME = explode(DIRECTORY_SEPARATOR, TEMPNAME);
rename(TEMPNAME, './tmp/archive/' . sprintf('%2$s_%1$s.log'
, strftime("%d.%m.%Y.%H.%M.%S", $_timestamp)
, array_pop($_LASTFILENAME))
);
}
}
Jetzt steht in den Archivierten Dateien auch der generierte tempnam(). So kann man prüfen, ob Eventuell was beim verschieben schief gelaufen ist.
બાય
--
.
..:
.
..: