ホームページ > データベース > mysql チュートリアル > PHP の json_encode() を使用して UTF-8 文字を正しくエンコードする方法

PHP の json_encode() を使用して UTF-8 文字を正しくエンコードする方法

Mary-Kate Olsen
リリース: 2024-10-30 16:28:03
オリジナル
617 人が閲覧しました

How to Encode UTF-8 Characters Correctly with json_encode() in PHP?

UTF-8 文字エンコード json_encode() のエンコードの問題

問題ステートメント

json_encode() 関数では UTF-8 文字のエンコードに問題があります。この関数が値を LATIN1 から UTF-8 にエンコードすると、出力は null になります。

質問

json_encode() を使用して、3 番目の方法に頼らずに UTF-8 値を正しくエンコードするにはどうすればよいですか? Zend Framework のようなパーティ ライブラリをお使いですか?

回答

この問題を解決するには、次の手順に従います:

  1. 空の配列を作成します:エンコードされた結果セットを保存する空の $rows 配列。
  2. 行の値をエンコード: データベースの結果セットを反復処理し、utf8_encode を使用して各行の値を UTF-8 に変換します。エンコードされた行を $rows 配列に保存します。
  3. JSON をエンコードしてエコーします: 最後に、$rows 配列を json_encode() に渡し、結果をエコーし​​て、正しくエンコードされた UTF-8 を送信します。

コード スニペットの例を次に示します:

<code class="php">// Create an empty array for the encoded resultset
$rows = array();

// Loop over the db resultset and put encoded values into $rows
while($row = mysql_fetch_assoc($result)) {
  $rows[] = array_map('utf8_encode', $row);
}

// Output $rows
echo json_encode($rows);</code>
ログイン後にコピー

以上がPHP の json_encode() を使用して UTF-8 文字を正しくエンコードする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート