Avatar billede styrk Nybegynder
12. oktober 2007 - 02:02 Der er 2 kommentarer og
1 løsning

parsing af apples just added trailers

Hejsa.

Jeg er forholdsvis ny i regex men jeg synes nu alligevel at jeg har fået en smule styr på det.

Jeg vil gerne parse følgende fil op i et array:

http://www.apple.com/trailers/home/feeds/just_added.json

Til det har jeg lavet følgende script:

<?php
$handle = fopen("http://www.apple.com/trailers/home/feeds/just_added.json", "rb");

$contents = Array();
$arr = Array();

$i = 0;
while (!feof($handle))
{
    preg_match("!{\"title\"(.*?)}!", fread($handle, 8192), $regs);
    $contents[$i] = "\"title\"".$regs[1];

    preg_match("!\"title\":\"(.*?)\"!", $contents[$i], $regs);
    $arr[$i][title] = $regs[1];

    preg_match("!\"releasedate\":\"(.*?)\"!", $contents[$i], $regs);
    $arr[$i][releasedate] = $regs[1];

    preg_match("!\"studio\":\"(.*?)\"!", $contents[$i], $regs);
    $arr[$i][studio] = $regs[1];

    preg_match("!\"poster\":\"(.*?)\"!", $contents[$i], $regs);
    $arr[$i][poster] = $regs[1];

    preg_match("!\"moviesite\":\"(.*?)\"!", $contents[$i], $regs);
    $arr[$i][moviesite] = $regs[1];

    preg_match("!\"location\":\"(.*?)\"!", $contents[$i], $regs);
    $arr[$i][location] = $regs[1];

    preg_match("!\"director\":\"(.*?)\"!", $contents[$i], $regs);
    $arr[$i][director] = $regs[1];

    preg_match("!\"rating\":\"(.*?)\"!", $contents[$i], $regs);
    $arr[$i][rating] = $regs[1];

    preg_match("!\"genre\":\[(.*?)\]!", $contents[$i], $regs);
    $arr[$i][genre] = str_replace("\"", " ", $regs[1]);


    preg_match("!\"actors\":\[(.*?)\]!", $contents[$i], $regs);
    $arr[$i][actors] =  str_replace("\"", " ", $regs[1]);

  $i++;
}
fclose($handle);

?>

Det virker også men det er somom at den ikke parser hele filen, men kun ca. de 10-20 første linjer.

Hvad kan der være galt? er på bar fund :-p
Avatar billede pidgeot Nybegynder
12. oktober 2007 - 11:10 #1
I og med det er en JSON-fil, var det da smartere at benytte de funktioner der allerede findes: http://dk2.php.net/json_decode
Avatar billede styrk Nybegynder
12. oktober 2007 - 11:58 #2
Det har du helt ret i.

Jeg skulle lige opgradere min php version så kørte det.

Læg et svar :-)
Avatar billede pidgeot Nybegynder
12. oktober 2007 - 11:59 #3
Værsgo :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester