日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

原生sql实现restful接口调用

發(fā)布時間:2023/12/6 编程问答 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 原生sql实现restful接口调用 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

index.php

<?phpinclude './Request.php'; include './Response.php'; //獲取數(shù)據(jù) $data=Request::getRequest(); $result=Response::sendResponse($data); echo $result; ?> Request.php <?php class Request{private static $method_type=array('get','post','put','delete','patch');private static $FruitList=array(1=>array('name'=>'apple','num'=>10),2=>array('name'=>'grape','num'=>20),3=>array('name'=>'orange','num'=>40),4=>array('name'=>'banana','num'=>30),5=>array('name'=>'peach','num'=>50),6=>array('name'=>'mango','num'=>60));public static function getRequest(){$method=strtolower($_SERVER['REQUEST_METHOD']);if(in_array($method,self::$method_type)){$methodName=$method.'Data';return self::$methodName($_REQUEST);}return false;}//get 查詢private static function getData($params){$fruitId=(int)$params['fruit'];if($fruitId>0){return self::$FruitList[$fruitId];}else{return self::$FruitList;}}//post 添加private static function postData($params){if(!empty($params['name'])){$data['name']=$params['name'];$data['num']=(int)$params['num'];self::$FruitList[]=$data;return self::$FruitList;}else{return false;}} //put 更新水果信息(全部信息)private static function putData($params){$fruitId=(int)$params['fruit'];if($fruitId==0){return false;}$data=array();if(!empty($params['name'] && isset($params['num']))){$data['name']=$params['name'];$data['num']=(int)$params['num'];self::$FruitList['fruitId']=$data;return self::$FruitList;}else{return false;}}//patch 更新水果部分信息private static function patchData($params){$fruitId=(int)$params['fruit'];if($fruitId==0){return false;}if(!empty($params['name'])){self::$FruitList[$fruitId]['name']=$params['name'];}if(!isset($params['num'])){self::$FruitList[$fruitId]['num']=(int)$params['num'];}return self::$FruitList;}//delete 刪除private static function deleteData($params){$fruitId = (int)$params['fruit'];if($fruitId==0){return false;}unset(self::$FruitList[$fruitId]);return self::$FruitList;} } ?>Response.php <?php class Response{const HTTP_VERSION="HTTP/1.1";public static function sendResponse($data){if($data){$code=200;$message='ok';}else{$code=404;$data=array('error'=>'Not Found');$message='Not Found';}//outputheader(self::HTTP_VERSION."".$code."".$message);$content_type=isset($_SERVER['CONTENT_TYPE'])?$_SERVER['CONTENT_TYPE']:$_SERVER['HTTP_ACCEPT'];if(strpos($content_type,'application/json')!==false){return self::encodeJSON($data);}else if(strpos($content_type,'application/xml')!==false){return self::encodeXml($data);}else{return self::encodeHtml($data);}}//jsonprivate static function encodeJson($responseData){header("Content-Type:application/json");return json_encode($responseData);}//xmlprivate static function encodeXml($params){header("Content-Type:application/xml");$xml=new SimpleXMLElement('<?xml version="1.0"?><fruit></fruit>');foreach ($params as $key =>$value) {if(is_array($value)){foreach($value as $k =>$v){$xml->addChild($k,$v);}}else{$xml->addChild($key,$value);}}return $xml->asXML();}

?


//html private static function encodeHtml($responseData){header("Content-Type:text/html");$html="<table border='1'>";foreach ($responseData as $key =>$value){$html.="<tr>";if(is_array($value)){foreach($value as $k =>$v){$html.="<td>".$k."</td><td>".$v."</td>";}}else{$html.="<td>".$key."</td><td>".$value."</td>";}$html="<tr>";}$html="</table>";return $html;} }?>

?

轉(zhuǎn)載于:https://www.cnblogs.com/chaihtml/p/10436149.html

總結(jié)

以上是生活随笔為你收集整理的原生sql实现restful接口调用的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。