ThinkPHP开发中遇到的小坑

TP不得不说是现在来说最好用的框架了,但是也不能不承认它还是有一些小坑需要填了。

1.坑爹的字段缓存机制

thinkphp为了高效的读取数据库,更快的打开网页,加入了字段缓存这个机制,其实来说是挺好的一个机制,就是!!你别把这个机制默认开启啊!


默认开启了字段缓存后,如果你做二次开发,要修改数据库里的字段,只要你后加入的字段,你都插不进去数据,不管你用什么方法,只能写个原生码插入,结果在读取刚插入的数据的时候,又读不出来,简直让你怀疑人生。

其实呢这只是因为TP自带的字段缓存,把新入表的字段全部屏蔽了╮(╯▽╰)╭

下面说解决方法:

可以在项目配置文件中增加如下配置

‘DB_FIELDS_CACHE’=>false   

如果还是不行吧debug开开试试,如果还是不行,别急还有黑科技!!!


把这个文件删掉!

以上就是坑一的解决方法啦。


2.抓狂的调试模式BUG

众所周知,上线了的项目是不可以吧debug模式开启的,不管是从安全角度还是从用户体验来说都是不能开的,但是你有没有遇到过开着调试模式还好好的,吧调试模式一关上线就各种报错的事情呢?尤其是404的报错尤其烦人!

那么怎么解决呢?

我先来一步步排错

404就是找不到文件,找不到文件就是路径,仔细看一下路径。我了个大擦!!!

怎么路径上的大写全部变成了小写啊??!

仔细的查阅了一下资料,原来这个又是thinkphp的坑啊

调试模式下区分大小写,部署模式下url不区分大小写,如需区分大小写可以在config里添加URL_CASE_INSENSITIVE 参数并设置为false。

'URL_CASE_INSENSITIVE'=>false
这样的话就能解决了!


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
ThinkPHP 是一个优秀的 PHP 开发框架,可以用于开发小程序后端接口。以下是使用 ThinkPHP 开发小程序的框架搭建步骤: 1. 安装 ThinkPHP 框架 可以使用 Composer 进行安装,运行以下命令: ``` composer create-project topthink/think tp5 --prefer-dist ``` 2. 配置数据库 在 `application/database.php` 文件配置数据库连接信息: ```php return [ // 数据库类型 'type' => 'mysql', // 服务器地址 'hostname' => '127.0.0.1', // 数据库名 'database' => 'test', // 数据库用户名 'username' => 'root', // 数据库密码 'password' => '', // 数据库连接端口 'hostport' => '3306', // 数据库字符集 'charset' => 'utf8mb4', // 数据库表前缀 'prefix' => '', // 数据库调试模式 'debug' => true, // 数据库部署方式:0 集式(单一服务器),1 分布式(主从服务器) 'deploy' => 0, // 数据库读写是否分离 主从式有效 'rw_separate' => false, // 读写分离后 主服务器数量 'master_num' => 1, // 指定从服务器序号 'slave_no' => '', // 是否严格检查字段是否存在 'fields_strict' => true, // 数据集返回类型 'resultset_type' => 'array', // 自动写入时间戳字段 'auto_timestamp' => false, // 是否需要进行SQL性能分析 'sql_explain' => false, ]; ``` 3. 添加路由 在 `route/route.php` 文件添加路由: ```php Route::get('api/:version/test', 'api/:version.Test/index'); ``` 4. 创建控制器 在 `application/api/v1/controller` 目录下创建控制器 `Test.php` : ```php namespace app\api\v1\controller; use think\Controller; class Test extends Controller { public function index() { return [ 'code' => 0, 'msg' => 'success', 'data' => [ 'hello' => 'world', ], ]; } } ``` 5. 访问接口 启动服务器,访问 `http://localhost/api/v1/test` 接口,应该可以看到类似以下的输出: ``` { "code": 0, "msg": "success", "data": { "hello": "world" } } ``` 以上是使用 ThinkPHP 框架开发小程序后端接口的基本步骤。可以根据需要添加更多的控制器和路由,实现更多的功能。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值