php is_int:评估来自cookies和GET的数据

时间:2013-09-18 15:37:28

标签: php cookies get

为什么这段代码返回false?

$var_1 = $_COOKIE['cookie_value']; // = 15
$var_2 = $_GET['get_value']; // = 21

echo $var_1 . '<br>' . $var_2;
/* output: 
15
21
*/


var_dump(is_int($var_1));
echo '<br>';
var_dump(is_int($var_2));
/* output:
bool(false)
bool(false)
*/

1 个答案:

答案 0 :(得分:1)

那是因为cookies和$ _GET总是返回一个字符串数据类型。 要对此类数据使用is_int(),只需向$var添加零以将其解析为数字。因此:

$var = $_GET['get_value']; // 15
var_dump(is_int($var));
// output: bool(false)

$var += 0;
var_dump(is_int($var));
//output: bool(true)