dszsajhd237437 2012-04-18 01:04
浏览 56
已采纳

当我手动为$ _POST数组赋值时,为什么filter_input()返回NULL?

I'm following some exercises about data validation and decided to mess around with the filter_input() function. When I try to run this code:

$_POST['var'] = 10;

$filtered = filter_input(INPUT_POST, 'var', FILTER_VALIDATE_FLOAT);

var_dump($filtered);

var_dump($filtered) returns NULL. I know the code works if $_POST['var'] is assigned a value by submitting a form, but I'm just wondering why manually assigning a value to the $_POST[] array doesn't return float(10)?

  • 写回答

3条回答 默认 最新

  • douou8954 2012-04-18 01:06
    关注

    filter_input() doesn't read from the _POST/_GET/_COOKIE/_SERVER/_ENV superglobal arrays. It reads from the original sources of those values respectively (which are also used to populate the superglobals).

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?