Microsoft und PHP

Also langsam wird mir Microsoft unheimlich…

Expression Studio 2 beta adds PHP, Silverlight 1.0 support

Expression Web, the competitor to Adobe’s DreamWeaver and a replacement to Microsoft’s FrontPage, now fully supports editing PHP code. In addition to standard syntax highlighting and autocompletion, developers can preview their PHP pages in a Web browser without installing a separate Web server.

Erst wird auf der Microsoft Launch-Veranstaltung des öfteren die Abkürzung PHP in den Mund genommen, jetzt unterstützt Expression Web auf ein mal auch PHP…

Wo soll das denn noch hinführen?

Mief, Mief

… was für ein Stress. Gestern Abend geh ich so vom Fernseher in Richtung PC – und muss erschrocken Feststellen: „Hier riecht doch was verschmort, oder?“

Es war schon etwas später – also erst mal alles abgeschaltet und auf heute vertagt.

Und heute ging die Suche los: Was riecht hier so? Der Geruch nach verschmortem Plastik war nur über dem Tisch zu erkennen. Unter dem Schreibtisch war die Luft rein. Logische Schlussfolgerung: Es muss was sein, was auf dem Tisch steht. Aber was? Monitore? LAN-Switch? USB-Hub? Webcam?

Nachdem ich alles auseinander genommen hatte die in dem Moment unerklärliche Erkenntnis: Wenn ich den PC einschalte, dann fängt es an aus dem Bereich des Switches zu stinken. Also Switch hinüber? Wäre schade, denn es ist nicht das ganz billige Modell

Aber warum sollte er anfangen zu riechen, wenn ich den PC einschalte, und dann wieder aufhören, wenn ich ihn abschalte? Und das auch noch unabhängig vom Switchport, an dem ich den PC angeschlossen habe.

Das hat mich so misstrauisch gemacht, dass ich doch noch mal unter den Tisch gekrabbelt bin. Und tatsächlich: Wenn ich die Nase schon fast im Netzteil stecken hatte, dann war es doch der PC, der das ganze verursachte. Etwas weiter untersucht war es dann glücklicherweise „nur“ das Netzteil. Die warme Luft aus dem Netzteil muss scheinbar so schnell nach oben gezogen sein, dass man sie unter dem Tisch gar nicht registriert hat.

Das Netzteil war dann allerdings noch teurer als es der Switch gewesen wäre… Naja. Zumindest tut der Rechner wieder, ohne dass ich Angst habe, dass er mir irgendwann in Flammen aufgeht.

In dem Zug hab ich dem PC gleich mal noch einen neuen CPU-Lüfter verpasst (der alte war dann doch etwas verstaubt) und hab im Gegenzug eine der bisher eingebauten Festplatten ausgebaut. Den Platz darauf brauche ich einfach nicht „im laufenden Betrieb“, und da profitiere ich lieber von den geringeren Laufgeräuschen und setze die Platte on demand ein, wenn ich Daten speichern muss…

Positiver Nebeneffekt des ganzen Umbaus: Der PC zieht jetzt im laufenden Betrieb ca. 20 weniger Watt aus der Steckdose als er das vorher getan hat.

Untypisierte Variablen und logische Verknüpfungen

Ich habe mal wieder ein klassisches Beispiel für Probleme, die Auftreten können, wenn Variablen in einer Programmiersprache nicht sauber typisiert sind:

$x = 255; $y = 96;
echo $x, ' OR ', $y, ' => ', ($x | $y);

Die beiden Variablen werden ODER-Verknüpft. Das Ergebnis ist wie zu erwarten…

255 OR 96 => 255

Was aber, wenn die beiden Werte bei der Zuweisung keine „Zahlen“, sondern Zeichenketten waren?

$x = '255'; $y = '96';
echo $x, ' OR ', $y, ' => ', ($x | $y);

Überraschung:

255 OR 96 => ;75

Und auf ein mal funktioniert der ansonsten durchdachteste Algorithmus nicht mehr. Deshalb lieber immer mit Typecast arbeiten:

$x = '255'; $y = '96';
echo $x, ' OR ', $y, ' => ', ((int) $x | (int) $y);