方法参数过滤器
在方法调用时,你可以通过方法参数过滤器,对传入方法的参数进行过滤处理。
注解说明
@FilterArg
属性名称 | 说明 |
---|---|
name | 参数名 |
filter | 过滤器callable |
用法示例
简单使用:
/*
* @FilterArg(name="data", filter="json_decode")
*/
public function test($data)
{
var_dump($data); // 这是一个stdClass对象
}
$obj->test('{"id":1, "message": "imi nb!"}');
复杂用法:
结合@Callback
、@Inject
注解使用,支持使用bean
中的方法。
/**
* @Bean("XXX")
*/
class TestXXX
{
public function decode($data)
{
return json_decode($data, true);
}
}
/*
* @FilterArg(name="data", filter=@Callback(
* class=@Inject("XXX"),
* method="decode"
* ))
*/
public function test($data)
{
var_dump($data); // 这是一个数组
}
$obj->test('{"id":1, "message": "imi nb!"}');
当前内容版权归 imiphp.com 或其关联方所有,如需对内容或内容相关联开源项目进行关注与资助,请访问 imiphp.com .