2016-11-27 3 views
0

私はウィキペディア用のツールを開発中です。私はhttps://de.wikipedia.org/wiki/Spezial:Linkliste/Hans_Jansen_(Arabist)のページをfile_get_contentsで取得しようとしています。それから、リストを探して\ nで展開することで、すべてのリスト項目を抽出します。'をfile_get_contentsの出力に取り除く

その後、私はリスト項目の名前を付けられた記事テキストを取得したいと思います。そのために私は、私はプレーンテキストとして記事名をコピーするとKa'bイブンAs'adという名前の記事は

https://de.wikipedia.org/w/index.php?action=raw&title=Ka 

の検索につながるまで

file_get_contents(https://de.wikipedia.org/w/index.php?action=raw&title=".urlencode($article)); 

すべてがうまくいく全力を尽くしますうまくいけ:手動で入力し、ウェブサイトから取得$記事のためでurlencodeの出力を比較

$article = "Ka'b ibn As'ad"; 
$page = "https://".$server."/w/index.php?action=raw&title=".urlencode($article); 

は違いを示しています。

はhtmlspecialchars(との出力を比較
manually; Ka%27b+ibn+As%27ad 
    website: Ka%26%23039%3Bb%20ibn%20As%26%23039%3Bad 

)はさらに印象的です:私はこれらの'特殊文字を取り除くにはどうすればよい

manually; Ka'b ibn As'ad 
    website: Ka'b ibn As'ad 

? htmlspecialchars_decode()はうまくいきません。

答えて

0

htmlspecialchars_decode()は、番号を持つものではなく、名前を持つHTMLエンティティのみを変換します。これにはhtml-entity-decode()を使用する必要があります!

関連する問題