最新php判斷數(shù)據(jù)是不是JSON格式示例
專業(yè)從事網(wǎng)站制作、成都做網(wǎng)站,高端網(wǎng)站制作設(shè)計,小程序開發(fā),網(wǎng)站推廣的成都做網(wǎng)站的公司。優(yōu)秀技術(shù)團隊竭力真誠服務(wù),采用HTML5建站+CSS3前端渲染技術(shù),自適應(yīng)網(wǎng)站建設(shè),讓網(wǎng)站在手機、平板、PC、微信下都能呈現(xiàn)。建站過程建立專項小組,與您實時在線互動,隨時提供解決方案,暢聊想法和感受。
以下是三零網(wǎng)為大家整理的最新php判斷數(shù)據(jù)是不是JSON格式示例的文章,希望大家能夠喜歡!
首先要記住json_encode返回的是字符串, 而json_decode返回的是對象
判斷數(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) {
json_decode($string);
return (json_last_error() == JSON_ERROR_NONE);
}
json_last_error()函數(shù)返回數(shù)據(jù)編解碼過程中發(fā)生的錯誤
注意: 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
首先要記住json_encode返回的是字符串, 而json_decode返回的是對象.
判斷數(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) {
json_decode($string);
return (json_last_error() == JSON_ERROR_NONE);
}
json_last_error()函數(shù)返回數(shù)據(jù)編解碼過程中發(fā)生的錯誤.
注意: 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
/**
*?獲取文件類型
*?@param?string?$filename?文件名稱
*?@return?string?文件類型
*/
function?getFileType($filename)?{
return?substr($filename,?strrpos($filename,?'.')?+?1);
}
/**
*?獲取文件類型2
*?@param?string?$filename?文件名稱
*?@return?string?文件類型
*/
function?getFileType2($filename)?{
return?strtolower(pathinfo($filename)['extension']);
}
/**
*?獲取文件類型3
*?@param?string?$filename?文件名稱
*?@return?string?文件類型
*/
function?getFileType3($filename)?{
return?$exten[count($exten?=?explode('.',?$filename))?-?1];
}
/**
*?獲取文件類型4
*?@param?string?$filename?文件名稱
*?@return?string?文件類型
*/
function?getFileType4($filename)?{
$exten?=?explode('.',?$filename);
return?end($exten);
}