函数名称:Yaf_Request_Abstract::getParam()
适用版本:Yaf 2.1.0及以上版本
用法:Yaf_Request_Abstract::getParam()函数用于获取请求参数值。它可以从GET、POST、COOKIE、SERVER和ENV等来源中获取参数值。
语法:public mixed Yaf_Request_Abstract::getParam ( string $name [, mixed $default ] )
参数:
- $name: 必需,要获取的参数的名称。
- $default: 可选,如果指定的参数不存在,则返回该默认值。
返回值:成功返回参数值,若参数不存在且未指定默认值,则返回null。
示例:
// 创建一个Yaf_Request_Http实例
$request = new Yaf_Request_Http();
// 设置GET参数
$_GET['id'] = 1;
// 获取GET参数值
$id = $request->getParam('id');
echo $id; // 输出: 1
// 设置POST参数
$_POST['name'] = 'John';
// 获取POST参数值
$name = $request->getParam('name');
echo $name; // 输出: John
// 设置COOKIE参数
$_COOKIE['token'] = 'abc123';
// 获取COOKIE参数值
$token = $request->getParam('token');
echo $token; // 输出: abc123
// 设置SERVER参数
$_SERVER['HTTP_HOST'] = 'example.com';
// 获取SERVER参数值
$host = $request->getParam('HTTP_HOST');
echo $host; // 输出: example.com
// 设置ENV参数
$_ENV['OS'] = 'Linux';
// 获取ENV参数值
$os = $request->getParam('OS');
echo $os; // 输出: Linux
// 获取不存在的参数值,并指定默认值
$age = $request->getParam('age', 25);
echo $age; // 输出: 25
注意事项:
- Yaf_Request_Abstract::getParam()函数可以从多个来源获取参数值,但获取的优先级为POST、GET、COOKIE、SERVER和ENV。
- 如果参数同时存在于多个来源,优先使用POST中的值。
- 如果参数不存在且未指定默认值,则返回null。
- 在Yaf框架中,通常使用$this->getRequest()->getParam()来获取请求参数。