file_get_contents() が UTF-8 文字を改行する
2023-09-22 14:08:48
質問
外部サーバーから HTML を読み込んでいます。HTML マークアップは UTF-8 エンコーディングで、ľ,š,č,ť,ž などの文字が含まれています。このようなHTMLをfile_get_contents()で読み込むと、次のようになります。
$html = file_get_contents('http://example.com/foreign.html');
UTF-8文字を混乱させ、適切なUTF-8文字の代わりにÅ, ¾, ¤や類似の無意味な文字を読み込みます。
どうすればこれを解決できますか?
UPDATEしてください。
HTMLをファイルに保存するのと、UTF-8エンコーディングで出力するのと両方試してみました。どちらもうまくいかないので、file_get_contents()はすでに壊れたHTMLを返しているということです。
UPDATE2です。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="sk" lang="sk">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<meta http-equiv="Content-Style-Type" content="text/css" />
<meta http-equiv="Content-Language" content="sk" />
<title>Test</title>
</head>
<body>
<?php
$html = file_get_contents('http://example.com');
echo htmlentities($html);
?>
</body>
</html>
どのように解決するのですか?
わかりました。私はfile_get_contents()がこの問題を引き起こしていないことを発見しました。私は別の質問で話している別の理由があります。愚かな私。
この質問を参照してください。 なぜDOMはエンコードを変更するのですか?
関連
-
[解決済み】接続の取得に失敗しました: php_network_getaddresses: getaddrinfo failed: 名前またはサービスが不明
-
[解決済み] [Solved] Fatal error: メンバ関数prepare()のNULLでの呼び出し
-
[解決済み] PHP & MySQL: mysqli_num_rows() expects parameter 1 to be mysqli_result, boolean given [重複] PHP & MySQL: mysqli_num_rows() expects parameter 1 to be mysqli_result, boolean given.
-
[解決済み】PHPで空の値からデフォルトオブジェクトを作成する?
-
[解決済み】ディレクトリ内のファイル数を数える PHP
-
[解決済み] [Solved] Fatal error: メンバ関数 query() の null への呼び出し。
-
[解決済み】Fatal error: mysqli_result 型のオブジェクトは使用できません [終了] 。
-
[解決済み] ずっとUTF-8
-
[解決済み] UTF-8とBOMなしUTF-8の違いは何ですか?
-
[解決済み] UTF-8、UTF-16、およびUTF-32
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】 libapache2-mod-php7 パッケージが見つからない。
-
[解決済み】子テーマのCSSが親テーマをオーバーライドしない
-
[解決済み】PHP フェイタルエラー。未定義の関数mssql_connect()をコールしています。
-
[解決済み] * vchiqインスタンスを開くのに失敗しました。
-
[解決済み] Uncaught SyntaxError: JSON の位置 1 に予期しないトークン o があります。
-
thinkphp5 timestamp 非整形の数値に遭遇した。
-
[解決済み】Wordpressの子テーマのstyle.cssが効かない。
-
[解決済み] Uncaught Error: 未定義の関数 mysql_escape_string() の呼び出し。
-
[解決済み] オートロードとは何ですか; spl_autoload、__autoload、spl_autoload_register はどのように使うのですか?
-
[解決済み] PHP 未定義関数への呼び出し