ISO-8859-1が 1 バイト文字セットであることを知りました。
ページhttp://www.manoramaonline.com/cgi-bin/MMOnline.dll/portal/ep/malayalamContentView.do?tabId=11&programId=1073753760&BV_ID=@@@&contentId=15238737&contentType=EDITORIAL&articleType=Malayalam%20Newsを参照してください。マラヤーラム語を使用しています。
HTTP ヘッダーとメタ タグは、文字エンコーディングとしてISO-8859-1を使用していることを示しています。
ただし、このページでは 2 バイト文字 (0x201A) が使用されています ( http://unicodelookup.com/#%E2%80%9A )。
(文字をコピーしてhttp://unicodelookup.comで調べます)
<div id="articleTitleMal" style="padding-top:10px;">
<font face= "Manorama" >
¼ÈØOVA¢: ÜÍß‚Äí 1.28 ...
</font>
</div>
シングルバイトエンコーディングで2バイト文字を使用するにはどうすればよいですか?
私はそれを知ることは好奇心ではありません。上記の問題を理解していないため、私のタスクの 1 つが行き詰まっています。
更新: 彼らはフォント www.manoramaonline.com/portal/mmcss/Manorama.ttf を使用しています。Manaorama フォントの文字の一部は 2 バイトを使用していると思います。
UPDATE2: 以下のコードを使用して、ドキュメントを ISO-8859-1 から UTF-8 に変換しようとしました。
<?php
$t = file_get_contents('http://www.manoramaonline.com/cgi-bin/MMOnline.dll/portal/ep/malayalamContentView.do?tabId=11&programId=1073753760&BV_ID=@@@&contentId=15238737&contentType=EDITORIAL&articleType=Malayalam%20News');
// Change the charset info in meta-tag
$t = str_replace('ISO-8859-1', 'UTF-8', $t);
file_put_contents('t.html', utf8_encode($t));
その時、上記の選択された文字が欠落しています。