Restful API實戰(php內容有點多,有時間寫吧)

課程地址:https://www.imooc.com/learn/811php

1、restful是什麼

.mysql

2、爲何要使用Restful

https默認端口是443sql

目前已發佈的http1.0,http1.1數據庫

舉例:須要獲取資源的建立時間和最後修改時間,能夠用HEAD請求api

舉例:須要請求獲取服務器容許我對服務器進行哪些操做,能夠用OPTIONS請求。還有相似訪問頻率參數服務器

3、如何使用Restful

版本號也能夠加入head中restful

PATCH只會返回更改的信息工具

右鍵管理員方式fetch

s1ui

1

api.com
回車回車
n

刪除vhosts/api.com/Errorfiles

管理員打開UPUPW_AP5.5/Apache2/conf/httpd-vhost.conf

將137行註釋,設置關閉防跨站

q

rr

127.0.0.1 api.com

本地開發環境搭建好

使用mysql workbench

點擊models的+

Add Diagram

設置表和字段

添加索引

設置文章

添加外鍵工具

多了一個外鍵

刪除前面user表名

file-export-SQL script

導出腳本命名sql

生成以前先drop-next-next

打開數據庫管理軟件-右鍵數據庫-運行SQL

刷新後發現多了mydb

鏈接外鍵。數據庫新建完畢

訪問都對應

<?php
/**
 * 鏈接數據庫並返回數據庫句柄
*/
$pdo = new PDO('mysql:host=localhost;dbname=resfult','root','root')
return $pdo

新建api.com/lib/db.php

<?php
class User
{
  /**
   * 數據庫鏈接句柄
   */
  private $_db
  /**
   * 構造方法
   * @param PDO @_db PDO鏈接
   */

  /**
   * 用戶登陸
   */
  public function login($username, $password)
  {

  }
  /**
   * 用戶註冊
   */
  public function register($username, $password)
  {
    return $this->_isUsernameExists($username)
  }
  /**
   * 檢測用戶名是否存在
   * @param $username
   */
  private function _isUsernameExists($username)
  {
    $sql = 'SELECT * FROM `user` WHERE `username`=:username'
    $stmt = $this->_db->prepare($sql)
    $stmt->bindParam(':username',$username)
    $stmt->execute()
    $exists= $stmt->fetch(PDO::FETCH_ASSOC)
    return !empty($exists)
  }
}

新建api.com/lib/User.php

<?php
require __DIR__.'/lib/User.php'
$pdo = require __DIR__.'./lib/db.php'
$user = new User($pdo)
print_r($user->register('admin','admin')

新建api.com/index.php,實例化類

添加數據庫記錄

訪問取得1

輸入不存在用戶,返回空

// return $this->_isUsernameExists($username)
    if ($this->_isUsernameExists($username)){
      throw new Exception('用戶已存在', 1)
    }

php內容有點多,有時間寫吧

相關文章
相關標籤/搜索