September 14th, 2007
OK, mal wieder gab es ein Problem, welches irgendwie keine im Internet auffindbare Lösung hatte. Ich habe mit PHP einen ‘chunked’-http-body auswerten müssen und der sieht dann in etwa so aus:
12
Dies ist ein Test!
5
Blöd!
0
Jetzt galt es also eine kleine Funktion zu schreiben, welche mir das ganze in folgendes umwandelt:
Dies ist ein Test!Blöd!
Also erstmal geschaut was die Zahlen bedeuten. Sind natürlich hex-Werte mit der Länge des folgenden Chunks. Und am Ende kommt eine 0. Also folgende Funktion tut genau das!
function decode_chunked($string) {
$lines = explode("\r\n",$string);
$i=0;
$length = 999;
$content = '';
foreach($lines as $line) {
$i++;
if ($i%2 == 1) {
$length = hexdec($line);
} elseif ($length == strlen($line)) {
$content .= $line;
}
if ($length == 0)
break;
}
return $content;
}
September 9th, 2007
Da aus verschiedenen Gründen Trigger mit dem phpMyAdmin nicht so recht laufen wollen, hat Binzy Wu ein Tool geschrieben, welches sehr einfach die Triggerverwaltung ermöglicht.
Januar 30th, 2007
DAS nenn ich mal optimistische Programmierung:
if(1==2){ [...] }
Wie oft diese Bedingung wohl wahr wird? Und jetzt nicht denken, dass der Ausführungsteil der Bedingung leer ist. Da sind gut und gern 1000 Zeichen Quellcode drin…
November 29th, 2006
Ein kleines Problem stellte sich mir gerade… wie rechne ich eine alte ISBN-10-Nummer mit 10 Stellen (bzw. 13 mit Bindestrichen) in eine neue, ab 1.1.2007 vorgeschriebene ISBN-13 mit 13 Stellen umzuwandeln.
function isbn10to13($isbn10){ $isbnclean = preg_replace("/([^d])/", "",substr($isbn10,0,-1)); if (strlen($isbnclean) != 9) { return $isbn10; } $isbn="978".$isbnclean;
$check=0; for ($i=0;$i<12;$i++) { $check+=(($i%2)*2+1)*$isbn{$i}; } $check=(10-($check%10))%10; return "978-".substr($isbn10,0,12).$check;}
Dieses Skript tut eben genau das!
April 1st, 2006
Nachdem ich nominiert war, hab ich es nun mit der phpSkypeStatus Klasse bei phpclasses auf Platz 5 geschafft.
Vielen Dank allen Votern.
März 26th, 2006
Gerade festegestellt. Die vorhandenen eXist PHP-API benutzen momentan den SoapClient von PHP5. Ab der 5.1er Version hat sich allerdings das Verhalten bezüglich base64binary Datenfeldern geändert.
Vor dieser Version musste der Anwendungsentwickler sich um die Kodierung/Entkodierung von solchen Datenfeldern kümmern, inzwischen tut das der SoapClient selbst.
Wenn man also ältere Programme verwendet, sollten diese auf die PHP-Version prüfen und entsprechend das eigene kodieren unterlassen. Ich werde jetzt mal die entsprechenden API ändern und um einen entsprechenden Passus ergänzen.
März 1st, 2006
Meine PHP-Skype-Klasse wurde bei phpclasses für den Februar-Award nominiert. Würde mich freuen wenn ihr für mich voted
Die Klasse erlaubt es direkt den Status eines SkypeUsers über PHP abzufragen. Man sieht also ob dieser Abwesend ist oder Online oder was auch immer.