php判斷是否為json格式的方法
首先要記住json_encode返回的是字符串, 而json_decode返回的是對(duì)象
判斷數(shù)據(jù)不是JSON格式:
function is_not_json($str){
return is_null(json_decode($str));
}
判斷數(shù)據(jù)是合法的json數(shù)據(jù): (PHP版本大于5.3)
function is_json($string) { www.dbjr.com.cn
json_decode($string);
return (json_last_error() == JSON_ERROR_NONE);
}
json_last_error()函數(shù)返回?cái)?shù)據(jù)編解碼過程中發(fā)生的錯(cuò)誤
注意: 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
PS:關(guān)于json操作,這里再為大家推薦幾款比較實(shí)用的json在線工具供大家參考使用:
在線JSON代碼檢驗(yàn)、檢驗(yàn)、美化、格式化工具:
http://tools.jb51.net/code/json
JSON在線格式化工具:
http://tools.jb51.net/code/jsonformat
在線XML/JSON互相轉(zhuǎn)換工具:
http://tools.jb51.net/code/xmljson
json代碼在線格式化/美化/壓縮/編輯/轉(zhuǎn)換工具:
http://tools.jb51.net/code/jsoncodeformat
在線json壓縮/轉(zhuǎn)義工具:
http://tools.jb51.net/code/json_yasuo_trans
C語言風(fēng)格/HTML/CSS/json代碼格式化美化工具:
http://tools.jb51.net/code/ccode_html_css_json
- php中JSON的使用與轉(zhuǎn)換
- PHP JSON 數(shù)據(jù)解析代碼
- php返回json數(shù)據(jù)函數(shù)實(shí)例
- 教你如何使用PHP輸出中文JSON字符串
- PHP中讓json_encode不自動(dòng)轉(zhuǎn)義斜杠“/”的方法
- php處理json格式數(shù)據(jù)經(jīng)典案例總結(jié)
- 使用PHP接收POST數(shù)據(jù),解析json數(shù)據(jù)
- php json_encode與json_decode詳解及實(shí)例
- PHP生成及獲取JSON文件的方法
- PHP使用JSON和將json還原成數(shù)組
- php使用json-schema模塊實(shí)現(xiàn)json校驗(yàn)示例
相關(guān)文章
PHP執(zhí)行l(wèi)inux命令常用函數(shù)匯總
一般情況下,很少會(huì)用php去執(zhí)行l(wèi)inux命令,不過特殊情況下,你也許會(huì)用到這些函數(shù)。以前我知道有二個(gè)函數(shù)可以執(zhí)行l(wèi)inux命令,一個(gè)是exec,一個(gè)是shell_exec,通過本文給大家介紹PHP執(zhí)行l(wèi)inux命令常用函數(shù)匯總,需要的朋友參考下2016-02-02基于Laravel實(shí)現(xiàn)的用戶動(dòng)態(tài)模塊開發(fā)
這篇文章主要給大家介紹了關(guān)于基于Laravel實(shí)現(xiàn)的用戶動(dòng)態(tài)模塊開發(fā)的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧。2017-09-09CentOS下PHP7的編譯安裝及MySQL的支持和一些常見問題的解決辦法
這篇文章主要介紹了CentOS下PHP7的編譯安裝及MySQL的支持和一些問題的解決 的相關(guān)資料,需要的朋友可以參考下2015-12-12thinkphp路由規(guī)則使用示例詳解和偽靜態(tài)功能實(shí)現(xiàn)(apache重寫)
這篇文章主要介紹了thinkphp路由規(guī)則使用示例詳解和偽靜態(tài)功能實(shí)現(xiàn)(apache重寫),需要的朋友可以參考下2014-02-02PHP設(shè)計(jì)模式(九)外觀模式Facade實(shí)例詳解【結(jié)構(gòu)型】
這篇文章主要介紹了PHP設(shè)計(jì)模式:外觀模式Facade,結(jié)合實(shí)例形式詳細(xì)分析了PHP外觀模式Facade相關(guān)概念、功能、原理、用法與操作注意事項(xiàng),需要的朋友可以參考下2020-05-05laravel框架數(shù)據(jù)庫配置及操作數(shù)據(jù)庫示例
這篇文章主要介紹了laravel框架數(shù)據(jù)庫配置及操作數(shù)據(jù)庫,結(jié)合實(shí)例形式分析了Laravel數(shù)據(jù)庫的基本配置與操作實(shí)現(xiàn)技巧,需要的朋友可以參考下2019-10-10