Einzelnen Beitrag anzeigen

Benutzerbild von littleDave
littleDave

Registriert seit: 27. Apr 2006
Ort: München
556 Beiträge
 
Delphi 7 Professional
 
#1

[erledigt] [PHP] Binärdaten aus XML

  Alt 5. Nov 2008, 18:40
Hallo,

ich hab da mal nen Problem: (bevor ich es vergessen: ich benutze PHP5)

Ich lade eine XML-Datei auf meinen Server hoch und ein PHP-Script soll das XML-File verarbeiten. In der XML-Datei sind auch binäre Daten drinnen, die folgendermaßen kodiert sind:

- Originaldaten (im Hexeditor): $0A$02$AF ...
- Daten in der XML-Datei: 0A02AF ... (als string)

Nun will ich diese Datei, die sich dahinter befindet, in eine seperate Datei schreiben. Dabei hab ich folgende Funktion geschrieben (es ist im Moment erstmal egal, dass die Datei 1 Byte länger werden kann)
Code:
function XMLBinaryToFile($xmlData, $TargetFile)
{
    $aFile = fopen($TargetFile, 'wb');
    for ($i = 0; ($i < strlen($xmlData)); $i += 4) {   
       
       $Value = hexdec('0x'.substr($xmlData, $i, 4));
       $arr  = pack('n', $Value);
       fwrite($aFile, $arr) ;
    }
    fclose($aFile);
}
Mein Problem ist jetzt, dass diese Funktion extrem langsam ist und die Daten in der XML-Datei mehrere 100 KB bis MB haben können. Das ist so viel, dass die Ausführungsdauer der php-Datei überschritten wird.

Jetzt ist meine Frage: gibt es dafür vielleicht eine viel schnellere Methode oder ist der Ansatz viel zu umständlich?
Jabber: littleDave@jabber.org
in case of 1 is 0 do external raise while in public class of object array else repeat until 1 is 0
  Mit Zitat antworten Zitat