0

わかりましたhttp://www.omdbapi.com/から結果を取得する必要があるこのスクリプトがあります

<?php
$doc = new DOMDocument;
$filePath = 'data.txt';

    if(file_exists($filePath)) {
        $file = fopen($filePath,'r');
        while(!feof($file)) {
            $name = fgets($file);
            echo $name;
            $doc->loadhtmlfile('http://www.omdbapi.com/?i=&t=' . $name . '&r=JSON&plot=full');

            $body = $doc->getElementsByTagName('body');
            if ( $body && 0<$body->length ) {
                $body = $body->item(0);
                echo $doc->savehtml($body);
                }
                sleep(1);
        }
        fclose($file);
    } 
    else {
        echo "FNF!";
    }
?>

これがスクリプトで、これが私が使用しているファイルです

Planet Earth
Game of Thrones
Breaking Bad
The Wire
Life
Sherlock
Arrested Development
Clanul Soprano
Firefly
Dexter
Avatar: The Last Airbender
Twin Peaks
Freaks and Geeks
Monty Python's Flying Circus
Roma
The Twilight Zone
Oz
Seinfeld
Deadwood
Desu n&#xF4;to
House of Cards
South Park
Fawlty Towers
Batman
Prietenii tai
Leyla ile Mecnun
Cowboy Bebop
Suits
It's Always Sunny in Philadelphia
Blackadder Goes Forth
Six Feet Under
Downton Abbey
The Office
The Walking Dead
Archer
Dragon Ball Z
Black-Adder II
Familia Simpson
Top Gear
Boardwalk Empire
The X Files
Battlestar Galactica
Justified
Black Adder the Third
Futurama
Doctor Who
Spartacus: Blood and Sand
Mad Men
Dragon Ball Z
Spaced

そして、最後のタイトルを除くすべてのタイトルで「映画が見つかりません」と表示されます(ファイルの最後にどのタイトルを入れてもかまいません)。なぜそうなったのか教えていただけますか?

4

1 に答える 1

2

試す:

$name = trim(fgets($file));

呼び出すfgetsと、改行が最後にある行が返されます。最後の行には改行がありません。

于 2013-07-14T06:56:29.327 に答える