Inline Grafiken in HTML E-Mails mit Zend_Mail automatisch versenden
Ich (Ralf Eggert) stand neulich vor dem Problem, dass ich alle Grafiken in einer HTML E-Mail automatisch als Inline-Images identifizieren und dann an die E-Mail anhängen wollte. Die Grundidee zur Lösung des Problems ist es, mit einem regulären Ausdruck alle Grafiken zu finden und dann entsprechend anzuhängen. Beim Versand gab es ein paar Probleme, die ich zusammen mit Michaels Hilfe lösen konnte. Und genau deshalb findet ihr hier nun diesen kurzen Gastbeitrag.
Der Code unten zeigt ein komplettes lauffähiges Beispiel. Nach der Konfiguration wird auch gleich ein Zend_Mail Objekt erstellt und der HTML Bereich mit Inhalten bestückt. Über preg_match_all und array_filter werden alle Fundstellen in IMG Tags, im BACKGROUND Attribut sowie im Inline-CSS gefunden. Das Array mit den Ergebnissen wird dann durchlaufen. Abhängig davon, ob es sich um Grafiken auf dem Server oder externe Grafiken handelt, wird dann das entsprechende Attachment erstellt.
Weiterlesen »
PHP und Zend Framework Video-Podcasts und -Serien
Falls ihr euch in das Zend Framework einarbeiten wollt, müsst, oder es kennenlernen möchtet, seien euch neben dem offiziellen Quickstart-Guide oder Büchern zu Zend Framework auch noch 2 Video-Podcasts ans Herz gelegt. Mein Favorit ist Zendcasts:
In gut verständlichem Englisch und mittlerweile über 60 Videos erklärt Jon Lebensold wirklich alles, was man mit dem Framework anstellen kann. Wirklich zu empfehlen.
Eine weitere Serie stammt von „integral30“ und ist auf YouTube zu finden. Es gibt aktuell 19 Folgen, und es wird ganz am Anfang angefangen, inklusive Erklärung des MVC-Pattern, dem Frontcontroller usw. Einziges Problem: Das indische Englisch, ich persönlich kann das nicht allzu lang ertragen, muss ich zugeben. Aber trotzdem sehenswert.
Ein gutes Anfänger PHP Video Tutorial bietet www.php-kurs.com. 39 Videos auf YouTube und weitere per Bestellung. Wer sich mit PHP beschäftigen möchte sollte unbedingt die YouTube Playlisten durchstöbern.
Sehr bekannt sind ja auch die Video2Brain DVDs, und auch zu PHP 5.3 gibt es eine randvolle DVD. Bin sehr gespannt wann und ob auch mal eine zum Zend Framework geben wird.
Habt ihr Tipps zu guten Videoserien, evtl. sogar für Fortgeschrittene/Profis? Welche Audio- und Video-Podcasts habt ihr aboniert zum Thema PHP, Zend Framework oder Webentwicklung allgemein? Deutsch und Englisch willkommen!
Linkpool Nummer 6
Why you can’t work at work:
Die Power und Geheimnisse von Javascript:
Start-Stop-Daemon, einfach PHP-Dienste unter Linux einrichten:
Javascript Exceptions in Userbrowsern mitloggen:
Mail Transport Resource für Zend Framework:
Der Beginn einer Serie über Websockets:
ZCE Online Praxis Tests
Aus meinen Vorbereitungen zum Zend Certified Engineer habe ich noch 6 Zend PHP5-Zertifizierung Online-Praxis-Tests übrig die ich verschenken möchte. Natürlich sollen diese an einen PHP-Entwickler gehen, der auch die Prüfung ablegen möchte und sie als Vorbereitung nutzen kann. Wenn ich es richtig gelesen habe sind sie noch bis zum 04.09.2010 gültig (wobei in meinem Zend-Account steht dass sie gar nicht ablaufen…).
Nun ist meine Frage: Wie finden wir den glücklichen Gewinner? Ich habe natürlich ein paar Ideen, würde aber auch gern etwas „neues“ machen. Ihr seid also gefordert mir zu sagen was ihr gern machen wollt. Weiterlesen »
Einen eigenen Zend_Filter erstellen
Zend_Filter sind kleine Hilfsfunktionen, die Eingaben filtern und eine eventuell geänderte Ausgabe zurück liefern falls die Eingabe nicht den Kriterien entsprach. Dabei besteht die Ausgabe immer aus einer Untermenge der Eingabe, ungültige Zeichen werden heraus gefiltert. Oder aber Eingabezeichen werden transformiert, sprich umgewandelt. Häufig genutzte Filter sind beispielsweise
Zend_Filter_Alpha <- filtert alle Zeichen raus die keine Buchstaben sind Zend_Filter_HtmlEntities <- transformiert alle Sonderzeichen in ihre HTML Entities Zend_Filter_Digits <- filtert alle Zeichen raus die keine Zahlen sind Zend_Filter_StringToLower <- transformiert alle Zeichen in Kleinbuchstaben
Hier einige Beispiele wie man sie nutzen kann: Weiterlesen »