让我解释一下。
假设我们有一个函数 - 名为phone.add
的API方法,最终用户使用一些参数调用http://example.com/api/v1/phone.add
。在PhoneManager
类中的某个地方执行实际函数之前,我们需要执行2次通用检查 - 验证参数和访问权限。
让phone.add
API方法看起来像这样:
function phone_add(string $param1, int $param2, callable $param3): float {
//... validate $param1, $param2, $param3
//... check access rights
//... call PhoneManager::add()
//... return result
}
很明显,验证可能会失败并且应该形成并发送相应的响应,但是在每个API方法中添加if (validation_failed(...)) return new Response(...)
都有点麻烦,所以......怎么样是否可以从嵌套函数返回实际的最终响应,或者如何正确实现此算法(操作集)?
谢谢你!