Re: php4 and writing binary

Bodo Kaelberer <[email protected]>
Newsgroups gmane.linux.suse.programming
Message-ID <[email protected]>
Hi Tim.


> ich habe folgendes Problem. So wie ich die Dokumentationen von PHP4 verstehe
> sollte eine Binary wie folgt geschrieben werden können:

>     $x = fopen("http://www.foo.de/foto.jpg", "rb");
>     $y = fopen("/var/www/htdocs/websites/plakatmotiv/daspm.jpg", "wb");
>     if (!fwrite($y, $x))
>         echo "schreiben nicht erfolgreich!";
>     else
>         echo "schreiben erfolgreich!";
>     fclose($y);
>     fclose($x);

> Hierbei kommt stehts ein schreiben erfolgreich. Jedoch steht nicht das JPG in 
> der Datei sonder diese Datei ist ein Textfile (obwohl ich es mit "wb" 
> geöffnet habe). Im Textfile steht drin: "Resource id #2".

> Wie schaffe ich es ein Binary (in diesem Fall ein JPG) von einer URL zu laden 
> und auf die Festplatte unter einem anderem Namen zu speichern???

Du hast das Lesen vergessen. $x enthält ein Resource-Handle (was als
Text ausgedrückt etwas wie "Resource idä #...." ergibt. Und diese
Zeichenkette schreibst Du in die zweite Datei.
Was Du aber wirklich schreiben willst, ist der binäre INHALT des
Bildes. Und dazu musst Du von $x lesen.

Am besten wohl mit:
    $inhalt   = fread( $x, 1000000 );
oder mit einer kleineren Blockgrösse in einer Schleife.

Und $inhalt schreibst Du dann nach $y, wie oben.

Gutnacht

-- 
 1  Bodo Kaelberer
123 http://www.webkind.de/        http://www.kaelberer-aio.de/
 3  Seelig sind die, die da arm an Geist sind, denn sie werden
 4                       sich Christlich Soziale Union nennen.


-- 
Um die Liste abzubestellen, schicken Sie eine Mail an:
    [email protected]
Um eine Liste aller verfügbaren Kommandos zu bekommen, schicken
Sie eine Mail an: [email protected]
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.