まず、json_encode は文字列を返し、json_decode はオブジェクトを返すことを覚えておいてください。
データが JSON 形式でないかどうかを確認します:
コードは次のとおりです |
|
関数 is_not_json($str){ return is_null(json_decode($str)); }
|
データが正当な JSON データであるかどうかを判断するには: (PHP バージョンは 5.3 以降)
コードは次のとおりです |
|
function is_json($string) { www.111cn.net json_decode($string); return (json_last_error() == JSON_ERROR_NONE); }
|
json_last_error() 関数は、データのエンコードおよびデコード中に発生したエラーを返します。
注: json エンコードおよびデコードで操作される文字列は UTF8 である必要があります。
例
コードは次のとおりです |
|
| * json 文字列を解析します
* @param type $json_str
* @return type
*/
function AnalyJson($json_str) {
$json_str = str_replace('\\', '', $json_str);
$out_arr = array();
preg_match('/{.*}/', $json_str, $out_arr);
if (!empty($out_arr)) {
$result = json_decode($out_arr[0], TRUE);
} else {
return FALSE;
}
return $result;
}
jsonでない場合はfalseを返す
興味がありそうな記事
- php json_encode utf-8 中国語の問題
- PHP json_encode 中国語処理クラスの例
- json_decode() を使用し、中国語が失われる PHP の GBK/GB2312 ページの解決策
- PHP5.5インストール後にjson_encodeが呼び出せなくなる問題の解決策
- phpはcurl postを通じてjsonデータインスタンスを送信します
- php jsonと配列変換は中国語をサポート
- PHP の json_encode 使用分析手順
- phpのjson_encode形式の中国語の問題の解決策
- PHP JSONデータ処理サンプルプログラムの使い方
- PHP JSONデータの作成とプログラムコードの解析
http://www.bkjia.com/PHPjc/738511.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/738511.html技術記事まず、json_encode は文字列を返すのに対し、json_decode はオブジェクトを返すことに注意してください。データが JSON 形式でないかどうかを判断するには、コードは次のとおりです。 function is_not_json($str){ return is_null(json_decode...
)