function is_not_json($str){
成都創(chuàng)新互聯(lián)堅持“要么做到,要么別承諾”的工作理念,服務領(lǐng)域包括:網(wǎng)站設(shè)計制作、成都網(wǎng)站設(shè)計、企業(yè)官網(wǎng)、英文網(wǎng)站、手機端網(wǎng)站、網(wǎng)站推廣等服務,滿足客戶于互聯(lián)網(wǎng)時代的成武網(wǎng)站設(shè)計、移動媒體設(shè)計的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡建設(shè)合作伙伴!
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
is_array — 檢測變量是否是數(shù)組
is_bool — 檢測變量是否是布爾型
is_callable — 檢測參數(shù)是否為合法的可調(diào)用結(jié)構(gòu)
is_double — is_float 的別名
is_float — 檢測變量是否是浮點型
is_int — 檢測變量是否是整數(shù)
is_integer — is_int 的別名
is_iterable — Verify that the contents of a variable is an iterable value
is_long — is_int 的別名
is_null — 檢測變量是否為 NULL
is_numeric — 檢測變量是否為數(shù)字或數(shù)字字符串
is_object — 檢測變量是否是一個對象
is_real — is_float 的別名
is_resource — 檢測變量是否為資源類型
is_scalar — 檢測變量是否是一個標量
is_string — 檢測變量是否是字符串
如果我沒記錯的話,post都是方式都會轉(zhuǎn)為字符串類型,所以你判斷類型時應該在輸入的時候就判斷
PHP
數(shù)據(jù)類型
PHP
支持八種原始類型(type)。
四種標量類型:
string(字符串)
integer(整型)
float(浮點型,也作
double
)
boolean(布爾型)
兩種復合類型:
array(數(shù)組)
object(對象)
兩種特殊類型:
resource(資源)
NULL(空)
查看變量類型
通過
gettype()
函數(shù)可以方便的查看某個變量的類型:
復制代碼
代碼如下:
?php$var_bool
=
TRUE;
//
a
boolean$var_str
=
"foo";
//
a
string$var_int
=
12;
//
an
integerecho
gettype($var_bool);
//
輸出
booleanecho
gettype($var_str);
//
輸出
stringecho
gettype($var_int);
//
輸出
integer?
(PS:T不錯的PHP
Q扣峮:276167802,驗證:csl)
提示
由于歷史原因,如果是
float
類型數(shù)據(jù),gettype()
函數(shù)返回的是
double,而不是
float
。
如果想查看某個表達式的值和類型,請使用用
var_dump()
函數(shù)。
判斷變量類型
如果想通過判斷變量類型來確定下一步邏輯動作,不要使用
gettype()
,而使用
is_type
系列函數(shù):
復制代碼
代碼如下:
?php$var_int
=
12;//
如果
$var_int
是
int
類型,這進行加法if
(is_int($var_int))
{
$var_int
=
$var_int+4;}echo
$var_int;
//
輸出
16?
以上是本文關(guān)于PHP
數(shù)據(jù)類型的匯總,希望本文對廣大php開發(fā)者有所幫助,感謝您閱讀本文。