ホームページ >バックエンド開発 >PHPの問題 >PHPで文字列変数をJSONオブジェクトに変換する方法

PHPで文字列変数をJSONオブジェクトに変換する方法

青灯夜游
青灯夜游オリジナル
2021-05-21 14:42:474748ブラウズ

PHP では、json_encode() 関数を使用して文字列変数を json オブジェクトに変換できます。構文は「json_encode (文字列変数)」です。json_encode() 関数は、任意のデータの変数を JSON エンコードするために使用されます。と入力し、JSON形式のデータに変換します。

PHPで文字列変数をJSONオブジェクトに変換する方法

このチュートリアルの動作環境: Windows7 システム、PHP7.1 バージョン、DELL G3 コンピューター

PHP で文字列変数を Json 形式に変換します

<?php
header("Content-Type:text/html;charset=utf-8;");
$arr = array (‘Version_code‘=>2,‘Version_name‘=>‘UpdateVersion‘,‘Versoin_desc‘=>‘更新了地图功能‘,‘Versoin_path‘=>‘http://nnddkj.com/BusIot/APK/BusIot.apk‘);
echo json_encode($arr);
?>

上記のコードは文字列変数を出力用に json 形式に変換するものですが、出力結果は次のようになります。

{"Version_code":2,"Version_name":"UpdateVersion","Versoin_desc":"\u66f4\u65b0\u4e86\u5730\u56fe\u529f\u80fd","Versoin_path":"http:\/\/nnddkj.com\/BusIot\/APK\/BusIot.apk"}即数组中所有中文在json_encode之后都不见了或者出现\u2353等。

解決策は、urlencode() 関数を使用して処理することです。次に、json_encode の前に、すべての配列のすべての内容が urlencode() で処理され、次に json_encode() を使用して json 文字列に変換され、最後に urldecode() を使用してエンコードされた中国語に変換されます。

<?php
header("Content-Type:text/html;charset=utf-8;");
$arr = array (‘Version_code‘=>2,‘Version_name‘=>‘UpdateVersion‘,‘Versoin_desc‘=>urlencode(‘更新了地图功能‘),‘Versoin_path‘=>urlencode(‘http://nnddkj.com/BusIot/APK/BusIot.apk‘));
echo urldecode(json_encode($arr));
?>

出力結果: {"Version_code":2,"Version_name":"UpdateVersion","Versoin_desc":"更新されたマップ関数","Versoin_path":"http://nnddkj.com/BusIot / APK/BusIot.apk"}

完了しました。 。

添付ファイル: json_decode は文字列を JSON 形式でエンコードし、json_encode は変数を JSON 形式でエンコードします

json_decode - 文字列を JSON 形式でエンコードします

説明:

mixed json_decode ( string $json [, bool $assoc ] )

JSON 形式の文字列を受け入れ、それを PHP 変数 $assoc に変換します。このパラメータが TRUE の場合、オブジェクトの代わりに配列が返されます

推奨される学習: "PHP ビデオ チュートリアル"

以上がPHPで文字列変数をJSONオブジェクトに変換する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。