$ _REQUEST显示垃圾值

时间:2014-11-04 08:42:26

标签: php

我有一个奇怪的问题,找不到原因。

我有网址

http://example.com/cp/user_detail?userID=2

所以如果我打印这段代码

            print_r($_REQUST);

它不应该打印

             Array ( [userID] => 2 ...... ?

但它打印这个数组

       Array ( [userID] => 84ac17a3690b4ecd8c8abfba8687e750 [_pk_id_2_2fa0] =>  
       26c324a269691d77.1410515405.1.1410515405.1410515405. [__utma] => 
       24293118.939351632.1410515405.1410515405.1410515405.1 [__utmz] =>  
      24293118.1410515405.1.1.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none) 
      [PHPSESSID] => 0394d01235809edd26422eedc400b6b5 ) 

这不奇怪吗?

我有获取或发布价值的一般功能

 function chf($value)
  {
    if(isset($_REQUEST[$value]))
    {
        if(isset($_POST[$value]))
        {
            $value=$_POST[$value];
        }

        else

        {
        $value=$_REQUEST[$value];
        }

        $keywords=array();

        $keywords=array('update','delete','select');

        foreach($keywords as $key=>$val)

        {

            $value= str_replace($val,'',$value);

        }

        return $value;

    }
    else
    {
        return '';  

    }
}

我应该如何更改它以便它为我提供正确的字符串值?

2 个答案:

答案 0 :(得分:1)

$ _ REQUEST默认包含Cookie:http://php.net/manual/en/reserved.variables.request.php。 PHPSESSID,__ utm *是cookie。如果您只想使用URL参数,请使用$ _GET。

答案 1 :(得分:1)

如果您需要网址中的数据,请使用

print_r($_GET);

这将为您提供如下数组:

Array(
    [userID] => 2
)