pack et unpack...
Posté : 30 nov. 2006, 00:29
Bonjour,
debutant en PHP, je suis en train d'ecrire mes premiers scripts. Dans l'un d'eux je dois ecrire des donnees dans un fichier au format proprietaire. Voulant stocker des coordonnees (de type double), j'ai ecris le code suivant:
et a l'affichage j'obtiens:
d is : 1.11111
end loop
ce qui signifie que la seconde valeur est perdue... et je ne comprends pas mon erreur. Je ne suis pas un specialiste de la conversion binaire, mais je ne vois pas trop ou ca plante.
J'ai meme essaye de separer les conversions en binaire pour chaque variable:
mais rien n'y fait, a la relecture du fichier je n'est qu'une seule valeur presente.
Merci pour votre aide a venir,
dangre
P.S.: ma version de php est 5.1.6 d'apres le info.php
debutant en PHP, je suis en train d'ecrire mes premiers scripts. Dans l'un d'eux je dois ecrire des donnees dans un fichier au format proprietaire. Voulant stocker des coordonnees (de type double), j'ai ecris le code suivant:
Code : Tout sélectionner
$file= fopen ("myFile.dat","wb");
$x=1.11111;
$y=2.22222;
$binaryData = pack("dd",$x,$y);
fwrite ($file,$binaryData);
$data = unpack ("dd",$binaryData);
foreach ($data as $d){
echo "<BR> d is : ".$d;
}
echo"<BR> end loop";
fclose ($file);
d is : 1.11111
end loop
ce qui signifie que la seconde valeur est perdue... et je ne comprends pas mon erreur. Je ne suis pas un specialiste de la conversion binaire, mais je ne vois pas trop ou ca plante.
J'ai meme essaye de separer les conversions en binaire pour chaque variable:
Code : Tout sélectionner
$binaryData = pack("d",$x);
fwrite ($file,$binaryData);
$binaryData = pack("d",$y);
fwrite ($file, $binaryData);
Merci pour votre aide a venir,
dangre
P.S.: ma version de php est 5.1.6 d'apres le info.php