## Restful API接口實例
在Restful中一切都被認為是資源。每個資源有對應的URI標識
處理資源使用GET、POST、PUT、DELETE等http方法操作實現創建、讀取、修改、刪除的操作
### 用戶類API:用戶注冊接口實現
實現功能:
1,PHP對MYSQL增刪改查
2,實現注冊、登錄驗證函數
3,簡單封裝返回JSON數據
步驟1:創建用戶表 user
id / name / pwd / mobile / email / reg_time / update_time
步驟2:控制器
創建注冊方法:
function registerAction(){
$user= $this->getRequest()->getPost("name",flase);
$pwd = $this->getRequest()->getPost("pwd",flase);
if(!user || $pwd){
echo json_encode(array("error"=>-1002, "errmsg"=>"用戶名或密碼不能為空"));
return false;
}
$model = new UserModel();
if($model->register(trim($name), trim($pwd))){
echo json_encode(array(
"error" => 0,
"errmsg"=>"",
"data"=>array("name"=>$user)
));
}else{
echo json_encode(array(
"error" => $model->errno,
"errmsg"=> $model->errmsg,
));
}
return true;
}
步驟3:Model
public function register($user,$pwd){
//1,檢驗user是否存在
$query = $this->_db->prepare("select count(*) as c from 'user' where 'name'=? ");
$query ->execute( array($user) );
$count= $query->fetchAll();
if($count[0]['c'] != 0){
$this->errno= -1005;
$this->errmsg="用戶名已經存在";
return false;
}
if(strlen($pwd) <8){
$this->errno =-1006;
$this->errmsg = "密碼不能少于8位";
return false;
}else{
$password = $this->psw_generate($pwd);
}
$query = $this->_db->prepare("insert into 'user'('id','name','pwd','reg_time') VALUES (null,?,?,?) ");
$ret = $query->execute(array($user,$password,date("Y-m-d H:i:s")));
if($ret){
$this->errno=-1006;
$this->errmsg="注冊失敗";
return false;
}
return true;
}
//用戶密碼MD5加密加鹽
private funtion psw_generate($password){
$pwd = md5("salt-123123".$password);
return $pwd;
}
步驟4:自行調用接口調試