首页  >  问答  >  正文

php实现restful api有什么框架使用方便?

php框架比较多,想实现restful api用哪个比较流行

高洛峰高洛峰2772 天前1699

全部回复(24)我来回复

  • 伊谢尔伦

    伊谢尔伦2017-04-10 16:28:38

    推荐一个 recess 应该会对你有所启发,restful 关键不在于框架的选择,而是你如何理解、实现restful。相比于其他框架,我更喜欢 recess 使用 Annotation 来实现的Router的方式,但显然性能差了点。当然它能在 Annotation 数据跟权限的 Validation 更好了。

    回复
    0
  • PHPz

    PHPz2017-04-10 16:28:38

    ToroPHP 居然没人推荐这个 专门为restful api设计的啊。

    回复
    0
  • 黄舟

    黄舟2017-04-10 16:28:38

    楼主的话有定的道理,laravel号称巨匠级,那是自称。用了symfony再看lavravel,其实很糙……包括orm,实在是很弱啊……内部写法太不OO了。
    个人认为,laravel就是个阉割了的速成版symfony2。不知大家怎么看?

    回复
    0
  • PHPz

    PHPz2017-04-10 16:28:38

    YIIorYII2

    回复
    0
  • PHP中文网

    PHP中文网2017-04-10 16:28:38

    其实 Laravel 做 RESTful 是很适合的。Laravel 4 中可以用 Route::resource 直接设置 RESTful 路由,而 Laravel 5 中引入了路由注释的功能,只需要在 Controller 指定@Resource("...")即可,而且每一个 Action 通过注释都可以反向生成路由。Laravel 生成 Controller 只需要一条命令就可以搞定:

    php artisan make:controller UserController
    

    回复
    0
  • 迷茫

    迷茫2017-04-10 16:28:38

    http://book.cakephp.org/3.0/en/development/rest.html CakePHP 3.0 对REST 支持很强大的。

    回复
    0
  • 高洛峰

    高洛峰2017-04-10 16:28:38

    在github上发现一个 https://github.com/mevdschee/...

    直接../api.php/[table_name]就行

    回复
    0
  • PHP中文网

    PHP中文网2017-04-10 16:28:38

    Laravel +1

    回复
    0
  • 天蓬老师

    天蓬老师2017-04-10 16:28:38

    laravel +1

    回复
    0
  • 阿神

    阿神2017-04-10 16:28:38

    Laravel是有Resource Controller的

    相关文档
    http://www.golaravel.com/docs/4.1/controllers/#resource-controllers

    这是通过generator自动创建的controller的代码
    请参考一下注释中HTTP verb 和 url的匹配

    class CommentsController extends \BaseController {

    /**
     * Display a listing of comments
     *
     * get comments
     *
     * @return Response
     */
    public function index() {}
    
    /**
     * Show the form for creating a new comment
     *
     * get comments/create
     *
     * @return Response
     */
    public function create(){}
    
    /**
     * Store a newly created comment in storage.
     *
     * post comments
     *
     * @return Response
     */
    public function store() {}
    
    /**
     * Display the specified comment.
     *
     * get comments/(:id)
     *
     * @param  int  $id
     * @return Response
     */
    public function show($id){}
    
    /**
     * Show the form for editing the specified comment.
     *
     * get comments/(:id)/edit
     *
     * @param  int  $id
     * @return Response
     */
    public function edit($id){}
    
    /**
     * Update the specified resource in storage.
     *
     * put comments/(:id)
     *
     * @param  int  $id
     * @return Response
     */
    public function update($id){}
    
    /**
     * Remove the specified resource from storage.
     *
     * delete comments/(:id);
     *
     * @param  int  $id
     * @return Response
     */
    public function destroy($id){}
    

    }

    回复
    0
  • 取消回复