Archive for April, 2013
Vorsicht bei der basename() Funktion und Umlauten
Wieder ein sehr komischer Bug, diesmal in Zusammenhang mit der Funktion basename():
Die basename() Funktion wird dazu verwendet den letzten Namensteil eines Pfades zurückzugeben. Beispiele:
echo basename('/home/michael/datei.txt'); // -> datei.txt echo basename('/home/michael/ordner'); // -> ordner echo basename('/home/michael/ordner/'); // -> ordner
Funktioniert wunderbar. Auch mit Umlauten innerhalb eines Dateinamens kein Problem:
echo basename('/home/michael/trööööt.txt'); // -> trööööt.txt
Steht aber ein Umlaut am Anfang des Dateinamens, dann gibt basename() einen falschen Dateinamen zurück:
Extended Method-Chains mit JavaScript
Gastartikel von Thomas Worm
Der Autor ist 25 Jahre alt, beschäftigt sich bereits seit der Schulzeit mit der Entwicklung von Webanwendungen auf Basis von PHP, (X)HTML, CSS, JavaScript und dem Framework des Typo3 CMS. Nach Abschluss des Bachelor-Studiums der Informatik arbeitet der Autor bei der DATEV eG im Bereich Cloud Services/ASP und studiert berufsbegleitend den Informatik-Master in Hagen.
Was sind Method Chains
Als Method Chain bezeichnet man eine Kette aneinandergehänger Methodenaufrufe auf einem Objekt. Möglich wird dies dadurch, dass die Methoden das Objekt als Rückgabewert wiederliefern. Dies kann zum Beispiel sinnvoll sein, wenn Daten gefiltert, gruppiert und sortiert werden sollen:
var untermenge = datenmenge.filter('name','[ABC]*') .group('umsatz').has('sum>400') .orderBy('name');
Sofern man mit Mengen arbeitet, ist dies durchaus ausreichend, weil man immer eine Menge zurückbekommt und damit auch einen Rückgabewert, der interessant ist (weil er die Ergebnismenge beinhaltet).
Rückgabewert beifügen
Tückisches array_merge()
Welches Ergebnis würdet ihr erwarten wenn ihr 2 Arrays merged?
$a = array( 'n' => 'n', 'o' => 'o', 'p' => 'p', ); $b = array( 'x' => 'x', 20 => 14, 'z' => 'z', ); $c = array_merge($a, $b);
OK, ich verrate es euch, das Ergebnis sieht so aus:
Der Gewinner des PHP-Unconf EU + PHP- Days 2013 Tickets
Alle 8 Kommentatoren haben den SHA256 Hash korrekt berechnet. Mein kleines Check-Script (siehe unten) spuckt folgendes aus:
Benjamin correct Sebastian correct Thomas Lamy correct Tobi Strunz correct Marco Rieger correct Till correct Ridcully correct Mathias correct
Der Gewinner wurde wie folgt bestimmt:
Die Hashes wurden sortiert und der „niedrigste“ gewinnt das Ticket. Dieses Verfahren habe ich als HTML-Kommentar im Verlosungsartikel versteckt, hat sicher niemand gesehen 😉
Weiterlesen »
PHPStorm 40% günstiger, und Bäume im Regenwald pflanzen
Eine neue coole Aktion von JetBrains, den Machern von PHPStorm, WebStorm, IntelliJ IDEA, PyCharm usw:
Diverse Produkte von JetBrains gibt es bis zu 50% günstiger, und für jede verkaufte Lizenz während der 7 Tage (15. – 22. April 2013) werden Bäume gepflanzt im brasilianischen Regenwald. Dies gilt leider nicht für Upgrades/Verlängerungen, sondern nur für neue Volllizenzen. Im Falle von PHPStorm sind es 6 Bäume. Details findet man auf der Aktionsseite Earth Day Celebration.
Mehr über die Aktion „Plant a billion trees“ lest ihr im JetBrains Blog Artikel.
Danke an Julian für den Hinweis!
Nebenbemerkung: Den Gewinner des PHP-Unconf-plus-PHPDay-Tickets werde ich heute Abend auslosen und morgen hier publizieren.