Version complète: sur le forum Webmaster Hub : Lecture fichier grib (binaire)
Webmaster Hub > Création et exploitation de Sites Internet > Les langages du Net > PHP
snwoman49
Bonjour,
Voilà j'aimerais lire un fichier au format grib (binaire compréssée).
Voilà mon code.
CODE
<?php
$fa = fopen("http://dd.weatheroffice.ec.gc.ca/grib/public/lores/CMC_glb_00/CMC_glb_ABSV_ISBL_500_latlon2x2_2005090600_P000.grib", "rb");
$contenu=fpassthru($fa);
//
echo "$contenu";
exit;
?>


Quand je lance le script j'obtient une combinaison de lettre,chiffre,caractères très bizard.

J'espère que vous pourrez m'aider.
Bien amicalement. smile.gif
Anonymus
C'est du binaire compressé biggrin.gif
TheRec
Oui... et c'est un format que PHP ne supporte pas nativement (pas comme TAR.GZ par example..). Il te faudra donc un "décodeur" pour extraire les données que tu récupère au format compressé.

Après une petite recherche je suis tombé sur ce encodeur/décodeur gratuit (j'en ai pas trouvé en PHP, il doit y avoir un joli algorithme de compression quand même). Je ne l'ai pas testé, mais si tu as un serveur dédié il te sera possible d'utiliser ce décodeur pour interpréter tes données compressées à la volée si j'en crois cet exemple en C...

Bonne chance
snwoman49
Merci Therec smile.gif
C'est du C va falloir que je me mette à ca alors tongue.gif
Encore merci
loufoque
Porte simplement le code en PHP (au fait, c'est pas du C ton exemple c'est du Fortran).
Le plus simple serait de lire la documentation du format grib.
TheRec
Ah oui... l'API est en C... je n'ai pas vérifié l'exemple, j'aurais du lire un peu avant de copier bêtement le lien unsure.gif C'est effectivement du Fortran...mille excuses wink.gif
snwoman49
Je sais lire les fichiers grib une fois décomprésser et prêt à être lu,mais je ne sais pas les décompréssés pour pouvoir ensuite les lire bien et non en fichier compréssé.
Tugdual
Bonjour,

Quelqu'un est-il parvenu à porter ce code en PHP ?

Merci
snwoman49
Je n'ai pas réussis à le passer en php, j'ai énormément de mal avec la signification avec le code en C.
smile.gif
Tugdual
On approche peut-être de la solution avec une librairie Perl :
http://search.cpan.org/~jedwards/PDL-IO-Grib-2.0/
Le code Perl est un peu plus facile à comprendre pour quelqu'un qui code en PHP :
http://www.cs.wcupa.edu/~rkline/perl2php/
J'ai pas trop le temps de m'y pencher pour l'instant, mais je crois que c'est une bonne piste.

Stéphane
snwoman49
Salut Rugdual, ca à l'air intéressant ca, va falloir que je me penche dessus.
J'ai vu qu'il y avait quelques pages de C IMSTP5.gif
Merci rolleyes.gif
Ceci est une version "bas débit" de notre forum. Pour voir la version complète avec plus d'information, la mise en page et les images, veuillez cliquer ici.