本篇文章給大家分享的內(nèi)容是php Restful api ?示例,有著一定的參考價(jià)值,有需要的朋友可以參考一下
因此,必須有一種統(tǒng)一的機(jī)制,方便不同的前端設(shè)備與后端進(jìn)行通信。這導(dǎo)致api構(gòu)架的流行,甚至出現(xiàn)”api first”的設(shè)計(jì)思想。restful api是目前比較成熟的一套互聯(lián)網(wǎng)應(yīng)用程序的api設(shè)計(jì)理論
restful api 格式如下:
GET /zoos:列出所有動(dòng)物園 POST /zoos:新建一個(gè)動(dòng)物園 GET /zoos/ID:獲取某個(gè)指定動(dòng)物園的信息 PUT /zoos/ID:更新某個(gè)指定動(dòng)物園的信息(提供該動(dòng)物園的全部信息) PATCH /zoos/ID:更新某個(gè)指定動(dòng)物園的信息(提供該動(dòng)物園的部分信息)DELETE /zoos/ID:刪除某個(gè)動(dòng)物園GET /zoos/ID/animals:列出某個(gè)指定動(dòng)物園的所有動(dòng)物DELETE /zoos/ID/animals/ID:刪除某個(gè)指定動(dòng)物園的指定動(dòng)物
php示例如下:
路由文件:
//獲取列表 $router->get('activity', 'ActivityController@index'); //獲取某一個(gè)活動(dòng) $router->get('activity/{id}', 'ActivityController@get'); //創(chuàng)建一個(gè)活動(dòng) $router->post('activity', 'ActivityController@create'); //更新一個(gè)活動(dòng) $router->put('activity/{id}', 'ActivityController@update'); //刪除一個(gè)活動(dòng) $router->delete('activity/{id}', 'ActivityController@delete');
controller文件如下:
//使用restfulapi實(shí)現(xiàn)activity的curdclass ActivityController{ //獲取列表 public function index() { return Resp::outs(Activity::all()); } //獲取某一個(gè)活動(dòng) public function get($id) { return Resp::outs(Activity::where('id', $id)->first()); } //創(chuàng)建一個(gè)活動(dòng) public function create(Request $request) { $data = $request->all(); return Resp::outs(Activity::create($data)); } //更新一個(gè)活動(dòng) public function update(Request $request, $id) { $data = $request->all(); return Resp::outs(Activity::where('id', $id)->update($data)); } //刪除一個(gè)活動(dòng) public function delete($id) { return Resp::outs(Activity::where('id', $id)->delete()); } }
可以用curl進(jìn)行測試
立即學(xué)習(xí)“PHP免費(fèi)學(xué)習(xí)筆記(深入)”;
curl 'http://www.loanapi.com/activity' curl 'http://www.loanapi.com/activity/26' curl -X POST 'http://www.loanapi.com/activity' -d 'title=xly' curl -X PUT 'http://www.loanapi.com/activity/26' -d 'title=xly' curl -X DELETE 'http://www.loanapi.com/activity/26'
? ? ? ? ? ?
因此,必須有一種統(tǒng)一的機(jī)制,方便不同的前端設(shè)備與后端進(jìn)行通信。這導(dǎo)致api構(gòu)架的流行,甚至出現(xiàn)”api first”的設(shè)計(jì)思想。restful api是目前比較成熟的一套互聯(lián)網(wǎng)應(yīng)用程序的api設(shè)計(jì)理論
restful api 格式如下:
GET /zoos:列出所有動(dòng)物園 POST /zoos:新建一個(gè)動(dòng)物園 GET /zoos/ID:獲取某個(gè)指定動(dòng)物園的信息 PUT /zoos/ID:更新某個(gè)指定動(dòng)物園的信息(提供該動(dòng)物園的全部信息) PATCH /zoos/ID:更新某個(gè)指定動(dòng)物園的信息(提供該動(dòng)物園的部分信息)DELETE /zoos/ID:刪除某個(gè)動(dòng)物園GET /zoos/ID/animals:列出某個(gè)指定動(dòng)物園的所有動(dòng)物DELETE /zoos/ID/animals/ID:刪除某個(gè)指定動(dòng)物園的指定動(dòng)物
php示例如下:
路由文件:
//獲取列表 $router->get('activity', 'ActivityController@index'); //獲取某一個(gè)活動(dòng) $router->get('activity/{id}', 'ActivityController@get'); //創(chuàng)建一個(gè)活動(dòng) $router->post('activity', 'ActivityController@create'); //更新一個(gè)活動(dòng) $router->put('activity/{id}', 'ActivityController@update'); //刪除一個(gè)活動(dòng) $router->delete('activity/{id}', 'ActivityController@delete');
controller文件如下:
//使用restfulapi實(shí)現(xiàn)activity的curdclass ActivityController{ //獲取列表 public function index() { return Resp::outs(Activity::all()); } //獲取某一個(gè)活動(dòng) public function get($id) { return Resp::outs(Activity::where('id', $id)->first()); } //創(chuàng)建一個(gè)活動(dòng) public function create(Request $request) { $data = $request->all(); return Resp::outs(Activity::create($data)); } //更新一個(gè)活動(dòng) public function update(Request $request, $id) { $data = $request->all(); return Resp::outs(Activity::where('id', $id)->update($data)); } //刪除一個(gè)活動(dòng) public function delete($id) { return Resp::outs(Activity::where('id', $id)->delete()); } }
可以用curl進(jìn)行測試
立即學(xué)習(xí)“PHP免費(fèi)學(xué)習(xí)筆記(深入)”;
curl 'http://www.loanapi.com/activity' curl 'http://www.loanapi.com/activity/26' curl -X POST 'http://www.loanapi.com/activity' -d 'title=xly' curl -X PUT 'http://www.loanapi.com/activity/26' -d 'title=xly' curl -X DELETE 'http://www.loanapi.com/activity/26'
相關(guān)推薦:
PHP中Restful PUT方法的參數(shù)提交及接收詳解
詳解yii2之restful api授權(quán)驗(yàn)證
以上就是php Restful api 示例的詳細(xì)內(nèi)容,更多請關(guān)注php中文網(wǎng)其它相關(guān)文章!
PHP怎么學(xué)習(xí)?PHP怎么入門?PHP在哪學(xué)?PHP怎么學(xué)才快?不用擔(dān)心,這里為大家提供了PHP速學(xué)教程(入門到精通),有需要的小伙伴保存下載就能學(xué)習(xí)啦!
微信掃碼
關(guān)注PHP中文網(wǎng)服務(wù)號
QQ掃碼
加入技術(shù)交流群
Copyright 2014-2025 http://miracleart.cn/ All Rights Reserved | php.cn | 湘ICP備2023035733號