Philipp Hasenfratz: include("http://..."); => Was mach ich falsch?

Beitrag lesen

Halihallo Andreas

Dateifunktionen? - Dass man Internetressourcen in PHP wie Dateien öffnen kann, ist
lediglich ein Feature oder Bug. Mir gefallen Socket oder INET-Funktionen besser ;)
Wieso? Ich habe das ehrlich gesagt noch nie verwendet, verstehe aber auch nicht ganz warum alle PERL-"Freaks" dagegen wettern. Der Programmierer will eine Datei einbinden, dies kann er auf vielfältige Weise tun, über das lokale Filesystem, Datei per HTTP, FTP... runterladen und einlesen... was spricht dagegen dass das ganze halt etwas vereinfacht wird? Sicher, "Ihr" habt das anders gelernt, ich auch, aber trotzdem verstehe ich nicht warum diese Vereinfachung schlecht sein soll?!

OK, diese Argumentation lass ich auch gelten ;)
Meine lautet so:
Internetressourcen haben mit Dateien nix gemein. Nichteinmal das Transportmedium
(Socket <=> Speicher) ist das selbe. Wie um alles in der Welt kommen die Entwickler
von PHP drauf, diese komplett verschiedenen Anwendungen zu vereinen (Zugegeben, _einige_
Module von Perl machen _genau_ das selbe, wie z. B. LWP!). Es kommt doch auch kein
Mensch auf die Idee, die Funktion time wahlweise mittels HEAD-Request auf eine Atomuhr-
Server oder aber über die Timestamp im RAM abzufragen (time() oder time
('http:://www.atomclock.com')). Hm... Wobei??? - Eigentlich gar nicht übel... ;)
Aber nein! - Ich bleibe hart! - Äpfel und Birnen mischt man nicht! ;-)

Nun, ich habe gar nicht soviel gegen diese Funktionalität, ich meide sie nur, da es
für mich Stilbruch wäre. Einigen wir uns: beide haben recht.

include() code wird vom PHP-Parser geparst. Wenn darin jetzt sreht <?php system("rm -r "); ?> (oder sowas) dann ist das sicher nicht lustig, udn wenn dann so Spezialisten eine Variable die sie per GET übergeben includen, dann viel Spaß ;-)
fopen() wird normalerweise mit fgets() oder file() gelesen, das was gelesen wird wird aber nur in eine Variable geschrieben oder höchtens ausgegeben, aber nicht geparst.
Ansonsten hast Du Rech bzgl. des Wrappers.

ACK.

Viele Grüsse

Philipp