PHP Tonic Services - 在同一服务中多次使用相同的动词

时间:2010-12-21 11:56:49

标签: php rest

我开始关注Tonic Restful Services framework,我认为这是一个非常好的框架。问题是除了示例之外我找不到太多资源,以便查看使用它的可能方法。

我想知道我是否可以在单个资源中多次使用POST动词,并且是否有某种注释可以允许我这样做。例如,JAX-RS具有@Action注释。

我真的没有很多使用REST或PHP的经验,所以我真的需要你的帮助。

提前谢谢。

1 个答案:

答案 0 :(得分:1)

不,你不能。但您可以使用帖子请求中的其他变量来发布帖子。 为了安全起见,请确保清除方法名称...

像这样的东西。

   /**
     * Handle a POST request for this resource
     * @param Request request
     * @return Response
     */
    function post($request) {

        if (isset($_POST['method'])) {
           return $this->$method($request, $name);
        }

    } 

    function post_one($request) {
       // your code here
    }

    function post_two($request) {
       // your code here
    }

    //...and so on...

如果要检查方法是否存在,可以使用类似

的方法
if (method_exists('controller_name', 'method_name'));

但这是另一个话题。 http://php.net/manual/en/function.method-exists.php