14. Juni 2018

PHP:
Eigene Log-Dateien für Tests

Mit der folgenden Funktion lassen sich eigene Log-Files für Tests oder Debugging sichern. In diesem Beispiel werden die Werte der globalen PHP-Variablen $_GET und $_POST gesichert.

<?php

function write_test_log()
{
	// Parameter bestimmen
	$file_path='';
	$file_name='test.log';		

	// Datei öffnen / anlegen
	$handle=fopen($file_path.$file_name, 'a');

	// Daten zusammenstellen: URL
	$full_url = (isset($_SERVER['HTTPS']) ? 'https':'http').'://'.$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'];

	// Daten zusammenstellen: $_GET
	ob_start();
	print_r($_GET);
	$output_GET=ob_get_clean();

	// Daten zusammenstellen: $_POST
	ob_start();
	print_r($_POST);
	$output_POST=ob_get_clean();

	// Daten sichern
	fwrite($handle, date('d.m.Y H:i:s').' ------------------------------'.chr(10).chr(10));
	fwrite($handle, 'URL: '.$full_url.chr(10).chr(10));
	fwrite($handle, '$_GET:'.chr(10));
	fwrite($handle, $output_GET.chr(10).chr(10));
	fwrite($handle, '$_POST:'.chr(10));
	fwrite($handle, $output_POST.chr(10));

	// Datei schließen
	fclose($handle);
}
if($_GET or $_POST) write_test_log();