Folgende Liste von PHP Bibliotheken bzw. Modulen habe ich mit der Zeit zusammengestellt, die einen guten Eindruck machen. Ich habe dabei darauf geschaut, wie sie gepflegt werden, wie verbreitet sie sind und wie die Dokumentation aussieht. Die Liste ist bestimmt nicht vollständig und erhebt auch keinen Anspruch darauf. Assets Assetic https://github.com/kriswallsmith/assetic Bildgrößen ändern / Thumbnail […]
PHP’s filter_var bietet einige vordefinierte Filter zur Inputvalidierung. Gute Praxis und sicher ist auch die Prüfung der Eingaben gegen eine Whitelist – also eine Liste aller erlaubter Werte. Dies ist standardmäßig mit den PHP Filtern nicht möglich. Allerdings kann man über den REGEXP Filter einen Whitelist Filter erstellen. Im Folgenden Beispiel sind str und str2 […]
JSONP ist eine der ältesten Möglichkeiten Daten über verschiedene Domaingrenzen hinweg auszutauschen und die Einschränkungen die bei einem AJAX Request hinsichtlich Same-Origin-Policy bestehen würden zu umgehen. Man braucht auf der Serverseite ein Script, dass JSON Daten mit einem Funktionsaufruf umhüllt. Z.B. müsste statt {some-key:’some-value’} callbackname({some-key:’some-value’}) vom Server zurückgegeben werden. Und diese Antwort wird vom Client […]
Begriffe die man öfters im Zusammenhang mit gutem Softwaredesign hört, ist Inversion of Control und Dependency Injection (DI). Aber was ist das eigentlich? Dependency Injection ist eine Möglichkeit um Inversion of Control zu erreichen – toll und jetzt? Am besten schaut man sich ein Beispiel an: Beispiel ohne Dependency Injection Angenommen wir haben eine Klasse […]
Die Same-Origin-Policy (SOP) stellt einen Sicherheitsmechanismus dar, der verhindert, dass www.a.de auf Ressourcen von www.b.de (z.B. über ein Script im Client) zugreifen kann. Grundsätzlich ist das eine gute Sache. Was aber wenn www.a.de und www.b.de mir gehören und ich bewusst einen Austausch herstellen will? In diesem Fall gibt es einige Möglichkeiten, wobei aber die eine […]
Ansich ist das Vorgehen ein Objekt in $_SESSION zu speichern eine tolle Idee. session_start(); require_once( ‘ClassFile.php’ ); $o = new ClassFile (); $_SESSION[‘model’] = $o; Man kann damit ein serialisiertes PHP – Objekt einfach per Sessionvariable über Requests hinweg mitführen und bei Bedarf das Objekt wieder auslesen: if (isset ($_SESSION[‘model’]) && is_a($_SESSION[‘model’], ‘ClassFile’)) $o_new = […]
Das Shapefile von ESRI ist eine bzw. sind mehrere Dateien, die Geodaten- und zugehörige Sachdaten enthalten. Die Geometrie ist in Binärformat in der Datei .shp gespeichert, die Sachdaten in der gleichnamigen. dbf Datei. Außerdem gibt es noch eine Reihe weiterer gleichnamiger Dateien. Mehr dazu bei Wikipedia. Im PHP Umfeld gibt es noch nicht so viel […]
Folgendermaßen kann man einen Verzeichnisbaum flach ausgeben:
Folgendes Beispiel: Ein Eingabefeld, in das der User HTML Code eingeben kann und nach Absenden des Formulars soll sowohl das HTML ausgewertet ausgegeben werden als auch die ursprüngliche Eingabe im Eingabefeld erneut bearbeitet werden können.Eingabe: Ausgabe: Wichtig ist hierbei die Eingabe über FILTER_SANITIZE_SPECIAL_CHARS oder FILTER_SANITIZE_FULL_SPECIAL_CHARS zu filtern. Die SANITIZE* Filter sorgen dafür, dass auch eine […]
Mit Composer habe ich ein wenig herumexperimentiert – hauptsächlich deshalb, weil man ohne Composer fast keine PHP Libraries mehr verwenden kann.Interessant ist die Autoload Funktionalität von Composer. Was ist Autoloading?Bisher war der PHP Code von include und require Ausdrücken zu Beginn einer Klasse gepflastert (Hinzu kommen dann gegebenfalls auch noch use Statements für Namespaces). Wenn […]