PHP-Code Beispiele

PHP Tipps

Alle Tipps und Skripte auf eigene Verantwortung bitte immer nur nach vorherigen Backup der Projektdaten anwenden!


Webspace Verzeichnis mit PHP rekursiv löschen 

Der Funktion wird ein Verzeichnisname übergeben. Innerhalb der PHP-Funktion ruft sich die Funktion solange auf bis das Verzeichnis, alle Unterverzeichnisse und die enthaltenen Dateien gelöscht sind. Voraussetzung ist das PHP die Rechte hat die Dateien zu löschen und auch kein serverseitiger Schreibschutz z.B. mit CHMOD 444 existiert.

<?php
function boolDelDir($source)  {
        if(@file_exists($source))  {
            if(@is_dir($source))  {
                $handle=@opendir($source);
                while (false !== ($file = @readdir($handle)))  {
                    if($file != '.' && $file != '..' && $file !='')  {
                        boolDelDir($source."/".$file);
                    }
                }
                @closedir($handle);
                return @rmdir($source."/".$file);
            } else  {
                return @unlink($source);
            }
        }  else  {
           return false;
        }
}
boolDelDir("zuLoeschendesVerzeichnis");
?>


IP-Adresse des Besuchers bei installiertem Varnish-Cache ermitteln

Der serverseitige Varnish Cache gibt bei einer Abfrage nach der IP-Adresse des Website-Besuchers die IP-Adresse vom Server zurück. Mit dem Skriptcode wird zunächst geprüft ob die Umgebungsvariable HTTP_X_FORWARDED_FOR gesetzt ist und wenn ja wird dann die IP-Adresse des Besuchers ermittelt.

<?php
function getClientIP(){
     if (array_key_exists('HTTP_X_FORWARDED_FOR', $_SERVER)){
            return  $_SERVER["HTTP_X_FORWARDED_FOR"];  
        }else if (array_key_exists('REMOTE_ADDR', $_SERVER)) { 
            return $_SERVER["REMOTE_ADDR"]; 
        }else if (array_key_exists('HTTP_CLIENT_IP', $_SERVER)) {
            return $_SERVER["HTTP_CLIENT_IP"]; 
        } 
        return '';
    }
echo getClientIP();
?>