PHP OPCache für bestimmte Verzeichnisse deaktivieren

PHP OPCache für Ordner deaktivierenIn diesem Artikel möchte ich euch zeigen wie man das Caching mittels OPCache für bestimme Verzeichnisse deaktivieren kann. (Wer vorab noch einen kurzen Einstieg in das Thema OPCache braucht, scrollt am besten bis zum blauen Kästchen in diesem Artikel vor.) Zwar ist OPCache in fast allen Fällen eine gute Idee und dessen Verwendung begrüßenswert, jedoch gibt es wie in fast allen Dingen auch hier Ausnahmen. Vorallem, wenn es um die Entwicklung geht oder wenn ein Bugfix getestet werden soll, kann es Sinn machen OPCache zu deaktivieren.
Da auf dem Webserver jedoch oftmals noch andere Projekte laufen, die von  OPCache profitieren, kann eine komplette Deaktivierung von OPCache für solche Testfälle keine Option sein. Deshalb geht es in diesem Artikel darum, wie man […]

Steganographie mit PHP – Dateien in Bildern verstecken

Steganographie mit PHPIn diesem Artikel wollen wir uns mit dem Thema Steganographie beschäftigen und ein kleines Beispiel in PHP implementieren. Denn mit PHP lassen sich längst nicht “nur” Webseiten erstellen oder Formulare umsetzen, was mit Sicherheit auch jeder versierte PHP-Programmierer größerer Webagenturen bestätigen wird.
Neben Funktionen zur Textverarbeitung bringt PHP auch Methoden zur Bildbearbeitung sowie zur Manipulation auf Bit- und Byte-Ebene mit. Und eben diese wollen wir uns heute zunutze machen. Doch bevor es mit dem Coding losgeht, gibt es noch einen kurzen Einstieg in das Thema Steganographie.
Steganographie ist keine Kurzschrift
Wie der Titel bereits angekündigt hat, geht es heute um Steganographie, die Kunst Informationen oder Wissen in einem Trägermedium zu verstecken. Wikipedia definiert Steganographie wie folgt:
Die Steganographie (auch Steganografie) ist die Kunst oder Wissenschaft der verborgenen Speicherung […]

Benchmark: strtotime() vs DateTime vs getTimestamp in PHP

Zuletzt schrieb ich ja darüber, wie man Datumsvergleiche in PHP realisieren kann. In dem Artikel stellte ich zwei Lösungsansätze vor. Zum einen mit Hilfe der strtotime()-Methode und zum anderen mit der DateTime-Klasse.
In den Kommentaren wurde ich dann von Christoph darauf hingewiesen, dass die strtotime()-Variante womöglich schneller sei. So hundertprozentig sicher war er sich jedoch auch nicht, also habe ich beschlossen mal einen kleinen Performance-Test durchzuführen, dessen Ergebnisse ich euch hier kurz präsentieren möchte.
Was habe ich gestestet?
Da die Frage auf strtotime() vs. DateTime abzielt, die DateTime-Klasse im Gegenteil zur strtotime()-Funktion jedoch mehr Funktionalität bietet, habe ich bei der DateTime-Klasse die Erstellung des DateTime-Objekts + die Ausgabe des Timestamps gemessen. Es wird also die Zeit für die identische Ausgabe gemessen.
Als Eingabe habe ich ein Datum ohne Zeit genommen – sprich eine Jahres-, Monats- und Tag-Angabe. Zudem habe ich noch eine dritte Funktion mit ins Rennen geschickt. Was genau es mit der getTimestamp()-Funktion […]

Datum in PHP vergleichen – so geht’s

php_date_compareWie vergleicht man eigentlich 2 Daten (Daten = Plural von Datum) in PHP miteinander? Die Frage klingt erst mal einfacher als es ist.
Der erste Gedanke, der einem meistens kommt, ist folgender. Wir speichern 2 Daten als String und vergleichen diese.
 
 
Vorüberlegung

<?php
$date1 = "2012-1-12";
$date2 = "2011-10-12";

if ($date1 > $date2)
echo "$date1 ist neuer als $date2";
else
echo "$date1 ist &auml;lter als $date2";
?>

Ausgabe:

2012-1-12 ist neuer als 2011-10-12

Auf den ersten Blick scheint das auch eine funktionierende Lösung zu sein. Was jedoch, wenn die beiden Daten in einem unterschiedlichen Format vorliegen?

<?php
$date1 = "12-1-12";
$date2 = "2011-10-12";

if ($date1 > $date2)
echo "$date1 ist neuer als $date2";
else
echo "$date1 ist &auml;lter als $date2";
?>

Ausgabe:

12-1-12 ist älter als 2011-10-12

Nun wird das Datum in 2012 auf einmal als kleiner als das […]

PHP-Fehlermeldungen unter Webmatrix 2 anzeigen

WebMatrix2_logoSeit einigen Wochen steht Microsofts Entwicklungsumgebung Webmatrix nun in der Version 2 zur Verfügung. Wie auch schon in der ersten Version, ist Webmatrix 2 eine kostenlose Entwicklungsumgebung für Webseiten und Webanwendungen verschiedenster Plattformen wie z.B. ASP.NET, PHP und HTML5.
Ich nutze Webmatrix unter anderem, um mal eben das ein oder andere PHP-Script zu testen. Leider gibt der mitgelieferte/integrierte Webserver in den Standardeinstellungen, also so, wie er ausgeliefert wird, keine Fehlermeldungen aus. Schleicht sich also der Fehlerteufel im PHP-Script ein und man hat nicht von vornherein alles mittels try-catch-Block abgefangen, so sieht man eine weiße Seite.
Um die, wie ich finde, zur Entwicklung sehr hilfreichen Fehlermeldungen wieder auszugeben, muss die php.ini des Webservers angepasst werden. Sofern ihr während des Setups von Webmatrix nichts verstellt habt, läuft ein IIS Express unter der Haube von Webmatrix. […]