tp5.0使用

一、路由  

    定义路由分组,不用每次去遍历完整的路由,提高路由匹配效率。

二、html 头尾文件引入

<include file="Public/menu"/>  首先file后不能有空格,file的路径是view层的路径(反复试出来的。。。)

三、tp5使用事务

// 手动控制事务的提交

Db::startTrans();

try{ Db::table('tp_data')->delete(2);

Db::table('tp_data')->insert(['id'=>8,'name'=>'thinkphp','status'=>1]);

// 提交事务

echo 'try'; Db::commit();

}catch(\Exception $e){

// 回滚事务

echo 'catch';

Db::rollback(); }

四、model 模型层使用

首先要在application/下面见一个model文件夹,在里面创建数据库表的model层

 命名:数据库表是什么就命名什么文件,如果已经配置表前缀了,就不用写表前缀了(例子:a_user  如果已经在框架里配置不用加a_表前缀,那命名就是 User.php 我后端用的是PHP),如果是a_user_info,那就命名为UserInfo(也就是后面有下划线的去掉,下划线后第一个字母大写)

使用方式

   use 引入

use \app\index\model\user;//(user是模型的名字)

     $res = user::get(1);

     $res->toArray();

 

     实例化数据模型

     $user = new User();

     $res = $user::get(2);

     $res->toArray();

 

     导入loader类

     use \think\loader;

     $user = loader::model("user");

     $res = $user::get(3);

     $res->toArray();

 

     $user = model("user");

     $res = $user::get(4);

     $res->toArray();

五、原生sql

引入 use/think/Db;        

query 用于查询 其他的用execute
插入记录

$result = Db::execute('insert into sb_ad (ad_name, ad_content ,status) values (1, "456",1)');
dump($result);   
更新记录
$result = Db::execute('update sb_ad set ad_name = "framework" where ad_id = 1 ');
dump($result);        
查询数据
$result = Db::query('select * from sb_ad where ad_id = 1');
 print_r($result);
删除数据
$result = Db::execute('delete from sb_ad where ad_id = 2 ');
dump($result);     
其它操作
显示数据库列表
$result = Db::query('show tables from tpshop1');
print_r($result);
清空数据表
$result = Db::execute('TRUNCATE table sb_ad');
dump($result);

 

六、自定义类的加载

把自定义的类库放到 /extend(和public同级)的文件夹下面

引入方法  Loader::import('wx.zhifu');   注:import里面:(文件夹名.文件名)

调用方法  $pay = new \zhifu(); 注:调用方法前一定要加 \ ,不然实例化错误。

 

七、隐藏入口index.php文件

NGINX下修改nginx.conf或者域名配置文件

location / { // …..省略部分代码
    if (!-e $request_filename) {
        rewrite  ^(.*)$  /index.php?s=/$1  last;
        break;
    }
}
posted @ 2019-07-29 15:54  blange  阅读(274)  评论(0编辑  收藏  举报