2016-03-25 7 views
4

DomCrawlerで収集して配列に格納するデータがありますが、è、à、ïなどの特殊文字については失敗するようです。PHP DomCrawlerの文字列をUTF-8に変換する方法

例として、私は結果をエコーするときèの代わりにèを得ます。

結果を.jsonファイルに保存すると、次のようになります。\u00c3\u00a8 私の目標は、.jsonファイルに特殊文字を保存することです。

私はそれをエンコードしようとしましたが、私が望む結果が得られていないようです。

$html = file_get_contents($url); 
$crawler = new Crawler($html); 

$h1 = $crawler->filter('h1'); 
$title = $h1->text(); 
$title = mb_convert_encoding($title, "HTML-ENTITIES", "UTF-8"); 

とにかく私の特殊文字を表示させることはできますか?

ありがとうございます!

答えて

0

コンストラクタを使用してHTMLを追加すると、クローラはISO-8859-1であるとみなします。私はあなたの答えを試みたと私は今でも残念ながら、私のJSONに `\のu00e8`を取得

$html = file_get_contents($url); 
$crawler = new Crawler; 
$crawler->addHTMLContent($html, 'UTF-8'); 
+0

:あなたは、あなたのDOMがaddHTMLContent方法でUTF-8であることを明示的に指示する必要があります。 –

+0

@FrankLucas 'addHTMLContent'の2番目の引数をISO-8859-1で変更しようとしていますか? –

+0

@ ThomsMauduit-Blinすべて同じままです:( –

関連する問題