为了账号安全,请及时绑定邮箱和手机立即绑定

thinkphp下发api

标签:
PHP ThinkPHP

新建一个数据库immoc_app_book,建立一个表ent_books

CREATE TABLE `ent_books` (

  `booid` int(11) NOT NULL,

  `bookName` varchar(20) DEFAULT NULL,

  `icon` text,

  `book_description` text

) ENGINE=InnoDB DEFAULT CHARSET=utf8;

INSERT INTO `ent_books` (`booid`, `bookName`, `icon`, `book_description`) VALUES

(1, 'aa', 'http://pij4ed5ao.bkt.clouddn.com/1.jpg', 'aa1'),

(2, 'bb', 'http://pij4ed5ao.bkt.clouddn.com/22.jpg', 'bb1'),

(3, 'cc', 'http://pij4ed5ao.bkt.clouddn.com/33.jpeg', 'cc1');

ALTER TABLE `ent_books`

  ADD PRIMARY KEY (`booid`);

ALTER TABLE `ent_books`

  MODIFY `booid` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=5;


首先要连接服务器的数据库:

在application下面写一个database.php:

return [
    // 数据库类型
    'type'            => 'mysql',
    // 服务器地址
    'hostname'        => '127.0.0.1',
    // 数据库名
    'database'        => 'immoc_app_book',
    // 用户名
    'username'        => 'root',
    // 密码
    'password'        => '',
    // 端口
    'hostport'        => '3306',
    // 连接dsn
    'dsn'             => '',
    // 数据库连接参数
    'params'          => [],
    // 数据库编码默认采用utf8
    'charset'         => 'utf8',
    // 数据库表前缀
    'prefix'          => 'ent_',
    // 数据库调试模式
    'debug'           => true,
    // 数据库部署方式:0 集中式(单一服务器),1 分布式(主从服务器)
    'deploy'          => 0,
    // 数据库读写是否分离 主从式有效
    'rw_separate'     => false,
    // 读写分离后 主服务器数量
    'master_num'      => 1,
    // 指定从服务器序号
    'slave_no'        => '',
    // 是否严格检查字段是否存在
    'fields_strict'   => true,
    // 数据集返回类型
    'resultset_type'  => 'array',
    // 自动写入时间戳字段
    'auto_timestamp'  => false,
    // 时间字段取出后的默认时间格式
    'datetime_format' => 'Y-m-d H:i:s',
    // 是否需要进行SQL性能分析
    'sql_explain'     => false,
];

在app\common\model底下建立Books.php

/**
 * Created by PhpStorm.
 * User: baidu
 * Date: 17/7/27
 * Time: 下午5:57
 */
namespace app\common\model;
use think\Model;
use app\common\model\Base;

class Books extends Base {


    public function getBooks($data = []) {

        $result = $this->select();
        return $result;
    }

}

然后在application下建立route.php

Route::resource('api/:ver/books', 'api/:ver.books');

在app\api\controller\v1下建立Books.php

namespace app\api\controller\v1;

use app\api\controller\Common;
use think\Controller;
use app\common\lib\exception\ApiException;
use app\common\lib\Aes;

class Books extends Controller
{

    public function index()
    {
        // 小伙伴仿照我们之前讲解的validate验证机制 去做相关校验
        $data = input('get.');
        $result = model('Books')->getBooks();
        return $result;
    }
}

最后在浏览器输入:http://139.199.89.89/api/v1/books

返回是:

[

    {

        "booid": 1,

        "bookName": "aa",

        "icon": "http://pij4ed5ao.bkt.clouddn.com/1.jpg",

        "book_description": "aa1"

    },

    {

        "booid": 2,

        "bookName": "bb",

        "icon": "http://pij4ed5ao.bkt.clouddn.com/22.jpg",

        "book_description": "bb1"

    },

    {

        "booid": 3,

        "bookName": "cc",

        "icon": "http://pij4ed5ao.bkt.clouddn.com/33.jpeg",

        "book_description": "cc1"

    }

]

代码在https://coding.net/u/nickgao/p/phpUserLogin/git

点击查看更多内容
2人点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
全栈工程师
手记
粉丝
6509
获赞与收藏
303

关注作者,订阅最新文章

阅读免费教程

感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消