Archive for the ‘PHP’ Category
3 Konferenzen, 15% Rabatt-Codes, und 6 Abos!
Es liegen noch einige Konferenzen an dieses Jahr, drei davon schneide ich hier kurz an weil ich eine davon dieses Jahr erneut besuchen werde, und ich 15% Rabatt-Codes ergattern konnte! Aber der Reihe nach.
Für die folgenden 3 Konferenzen kann ich Rabatt-Codes verteilen, jeweils 15%, natürlich auch noch anwendbar auf den Early-Bird-Preis bzw. den Kollegenrabatt, also der kleinsmögliche Preis:
13. – 15. Oktober 2014 – Berlin. 18 Workshops zu je 3,5 Stunden. Die Themen umfassen unter anderem: AngularJS, JavaScript-Security, Web Application Architecture, ECMAScript 6, Hood.ie, Techniken für asynchrones JavaScript, Sass, Node.js, CouchApps, Regex für JavaScript, Website Performance, D3.js, Yeoman und Grunt.js, Responsive Webdesign
13. – 15. Oktober 2014 – Berlin. 6 Workshops zu je 3,5 Stunden. Themen: Responsive Webdesign, CSS3, HTML5 Formulare, Touch-Oberflächen, und Web Components. Wem die 6 Workshops zu wenig sind: Alternativ können auch die Workshops der Javascript-Days besucht werden, die beiden Events finden parallel statt, und man darf beide besuchen.
24. bis 26. September 2014 – Düsseldorf. 18 Power-Workshops zu je 3,5 Stunden. Themen beispielsweise: Infrastruktur, Git, Sicherheit, SOA (Service oriented Architecture), Continuous Integration, Code-Qualität, Deployment ohne Wartungsfenster, Projekte erfolgreich beenden, Domain-Driven Design, wiederverwertbarer Code, Juristische Fallstruke, Typo3
Die Javascript-Days und HTML5-Days finden gleichzeitig in der selben Location statt, und wer eins von beidem besucht bekommt das andere umsonst mit dazu, man kann sich also aus beidem die jeweils interessantesten Vorträge raussuchen und hat noch mehr Auswahl.
Am PHP-Summit in Düsseldorf werde ich dieses Jahr wieder teilnehmen, 2012 war ich bereits beim Summit in Berlin dabei und hab es sehr genossen, kein reiner Frontalunterricht sondern Workshops mit direktem Kontakt, Hands-On und Eingehen auf die Fragen der Teilnehmer.
Wer an einem der drei Events teilnehmen möchte und einen Rabatt-Code braucht, schreibt einfach einen Kommentar hier im Blog und ich schicke einen Rabatt-Code raus per E-Mail.
Auf den ersten Blick sind die Preise etwas höher, das liegt daran dass es keine Massenveranstaltungen sind wie andere Konferenzen, wo 300 oder gar 1500 Entwickler zusammenkommen und ganze Kinos füllen, sondern hier nur wenige Dutzend Teilnehmer bei den Workshops sind, und auf jeden einzeln eingegangen werden kann. Ich kann das bestätigen durch den Besuch vor 2 Jahren beim Summit, ich konnte diverse Themen direkt ansprechen und wir haben diskutiert mit den Trainern und den anderen Teilnehmern, das ist cooler als „nur“ Präsentationen zuzugucken. Größer ist nicht immer besser. Man bekommt 3 vollgepackte Tage, jeweils 8 bzw. 9 Stunden Programm, andere Konferenzen sind häufig „nur“ 2 Tage.
Den Preis kann man sich in den meisten Fällen nicht privat leisten, da muss der Arbeitgeber schon mitspielen, was er auch ab und zu macht hoffe ich, denn Arbeitnehmer haben ein Recht auf Weiterbildungsmaßnahmen! Danke übrigens an meinen Chef, der mich da ab und zu unterstützt bei meinen Vorhaben!
Der Rabatt-Code ist mehr als 100€ wert, nutzt ihn!
Auch kann ich 6 Jahres-Abos an euch verlosen, 3 Mal das Entwickler-Magazin und 3 Mal das PHP Magazin! Sie verlängern sich nicht automatisch, also keine Bindung. Wer daran Interesse hat schreibt in die Kommentare entweder „+EntwicklerMagazin“ ODER „+PHPMagazin“, jeder nur ein Mal versteht sich. Die 6 Abos verlose ich am 4. August 2014.
Also, viel Glück, bzw.: Wir sehen uns in Düsseldorf!
Edit 05.08.2014: Die Gewinner der Verlosung wurden bestimmt.
Verteilung der PHP-Versionen, Verbreitung von 5.5
Da PHP 5.6 vor der Tür steht (die Beta müßte jeden Tag erscheinen, und die finale Version dann in einigen wenigen Wochen) fragte ich mich wie es mit der PHP 5.5 Verbreitung aussieht, immerhin ist 5.5 bereits am 20. Juni 2013 veröffentlich worden, also vor fast 10 Monaten. Bei mail.de sind wir erst Anfang Februar auf 5.5 umgestiegen, wir nutzen keine Software im Produktivbetrieb kurz nachdem sie released wurde und warten immer ein paar Wochen ab bis die ersten Bugfix-Releases erschienen sind. Wenn Zeit da ist versucht man sich bereits vorher an einer Testumgebung, aber diesmal fehlte die Zeit dies ausführlich machen zu können Mitte des Jahres. Ende des Jahres hatten wir so viel um die Ohren sodass wir erst Anfang dieses Jahres dazu gekommen sind.
Je größer die Umgebung, je umfangreicher die Applikationen und je mehr unterschiedliche Projekte mit externen Abhängigkeiten man hat, desto aufwändiger sind die Tests und die Änderungen die man machen muss. Mit der Version 5.5 gab es kaum Änderungen an Funktionen um die man sich kümmern muss wie man im Migration Guide 5.5 lesen kann. Wichtig sind vor allem die Backward Incompatible Changes, die Deprecated Features und die Changed Functions. Für uns jedoch war die wichtigste Änderung die Einführung des OpCache, der ehemals als Zend Optimizer+ bekannte Bytecode-Cache der nun mit PHP ausgeliefert wird. Wir nutzten bis dahin seit Jahren APC als Bytecode-Cache und auch als lokalen Usercache. Nun wechseln wir weg von APC hin zu OpCache und APCu. Da wir dort die meisten Probleme erwarteten mußten wir dies besonders gut testen, denn in den letzten Monaten sind noch einige kleine Bugs in APCu aufgetreten.
GeoIP Fullsize Website
Wer schnell und unkompliziert sehen möchte wo eine IP-Adresse ungefähr beheimatet ist, der sucht sicherlich bei Google nach so etwas wie „ip geo location“ oder ähnliches. Es finden sich dann einige Suchergebnisse mit Webseiten und Formularen, in die man die IP-Adresse einträgt und man dann Informationen zur IP bekommt, wie beispielsweise den Reverse-DNS-Eintrag oder vielleicht auch einer kleinen Karte, wo die IP-Adresse ungefähr zugewiesen wurde.
Doch diese Webseiten sind häufig nicht IPv6-ready, und man kann sich nicht nur die Karte anschauen wenn das das einzige ist was einen interessiert. Wir haben dazu nun einen kleinen Dienst erstellt bei mail.de, der frei nutzbar ist und wo nur die Karte angezeigt wird, und zwar Fullsize:
Standardmäßig wird erstmal die IP-Adresse des aktuellen Besuchers genommen, es kann aber oben für das kleine Textfeld oder über den GET-Parameter q eine IP-Adresse übergeben werden. Außerdem lässt sich die Sprache der Karte umstellen. Es funktioniert mit IPv6-Adressen und ist über HTTPS erreichbar, sodass man keine Probleme mit Mixed-Content bekommt.
Ein Beispiel
Bug bei Authentifizierung in curl
curl hat in der aktuell verwendeten Version im stabilen Ubuntu 13.10 einen Bug, der sich auch rein bis in die PHP-Scripte auswirkt.
Wenn man bei der Nutzung von curl die Authentifizierung nutzt und im Passwort ein Semikolon enthalten ist (was gute Passwörter ja so an sich haben), dann wird dieses Passwort abgeschnitten. Folgender Beispielcode:
$curlSettings[CURLOPT_HTTPAUTH] = CURLAUTH_BASIC; $curlSettings[CURLOPT_USERPWD] = '1testuser' . ':' . 'pass;word'; $curl = curl_init('https://www.phpgangsta.de/download/curl_auth_test.php'); // content: echo 'Password: '.$_SERVER['PHP_AUTH_PW']; curl_setopt_array($curl, $curlSettings); curl_exec($curl); // should output: Password: pass;word // wrong output: Password: pass
Es wird mittels des curl-Parameters CURLOPT_USERPWD der Username und das Passwort übertragen, und wie man an der Antwort des Servers sieht kommt nur das Passwort bis zum Semikolon beim Server an, es wird abgeschnitten.
mysql_* Funktionen noch im Code?
Heute eine kleine Umfrage. Es ist anonym und keiner muss sich rechtfertigen (kann aber natürlich gern in den Kommentaren, die Gründe sind sicher interessant!).
Es geht um die ext/mysql Extension, sprich die mysql_* Funktionen. In PHP 5.5 wurden sie DEPRECATED, d.h. es gibt eine Deprecation-Warnung im PHP-Error-Log dass die Funktionen nicht mehr benutzt werden sollen da sie bald entfernt werden.
Nun stehen die Planungen für PHP 5.6 an, und eine Frage ist: Soll ext/mysql entfernt werden, nachdem es in der letzten Version als veraltet markiert wurde? Entfernen heißt in diesem Zusammenhang: Verschieben aus dem Kern in die PECL Library. Wer es unbedingt noch braucht kann es also separat nachinstallieren. Im englischen PHP-Online-Manual gibt es große rote Warnungen dass es nicht mehr genutzt werden sollte, in der deutschen Variante aber leider nicht.
Hier also meine kleine Umfrage:
Ich selbst habe aktuell ein kleines Kommandozeilenscript das ich umschreiben muss, und WordPress nutzt es noch, ansonsten bin ich Dank dem Zend Framework, welches PDO nutzt, glaube ich ext/mysql-frei.