thinkphp怎么连接数据库和sqlserver数据库
讲真,搞ThinkPHP连接数据库,大家最先想到的就是MySQL了吧?其实操作没那么复杂,只要按照下面步骤走,咱们就离成功不远啦。
- 先打开入口文件旁的config.inc.php,添加数据库基本配置,比如数据库类型(mysqli)、主机地址、数据库名字、用户名、密码还有表前缀啥的,代码大概长这个样子:
return array(
'DB_TYPE' => 'mysqli',
'DB_HOST' => 'localhost',
'DB_NAME' => 'demo',
'DB_USER' => 'root',
'DB_PWD' => 'root',
'DB_PREFIX' => 'think_',
);
简单明了,是吧?
- 关于连接SQLServer,要稍微注意点:
-
首先,得去php.ini里打开sqlsrv扩展(找找有没有“extension=php_sqlsrv.dll”之类的,改成On),改完保存之后,记得重启PHP服务,超级重要!
-
然后去ThinkPHP的配置文件里面改成:
php 'DB_TYPE' => 'sqlsrv', 'DB_HOST' => '你的服务器地址', 'DB_NAME' => '数据库名', 'DB_USER' => '用户名', 'DB_PWD' => '密码', 'DB_PORT' => 1433,
最后写点代码随便查张表数据,能打印出来,那就成功了,万一报错别慌,照着提示一步一步改就行,真的,别怕~

thinkphp中手机验证码存储技巧和数据库缓存机制是怎么回事
这部分超实用了,尤其是有人问怎么把手机验证码存在数据库,然后还能设置失效时间。
- 存验证码其实有很多方法,不过最简单又靠谱的就是存session,比如这样:
$_SESSION['phone'] = '手机号';
$_SESSION[md5('手机号')] = '验证码';
为了避免不同用户验证码互相覆盖,建议把手机号当做唯一标识,这样就安全得多啦!别忘了设置失效时间哦,过期了验证码自动不能用了,太贴心。
- 还有一个小技巧,缓存数据库字段名其实ThinkPHP也帮你弄好了!只要在配置文件里启用字段缓存功能,比如设置:
'fields_cache' => true,
'schema_cache_path' => 'path/to/cache',
这样一来,每次访问数据库的时候字段名就不会再重复查询,访问速度蹭蹭涨,性能提升嘎嘎棒!
- 顺带说个细节,有时候在config.php想用数据库中的数据,别急,先在控制器里初始化对应表的Model,比如:
$user = M('User');
你就能轻松操作数据库了,可以说是ThinkPHP帮我们封装了超多复杂细节,真是省心省力。

相关问题解答
-
ThinkPHP怎么连接MySQL数据库呀?
哎呀,这个超简单啦!只要在配置文件里加上数据库信息,比如主机、用户名、密码啥的,然后调用Model链接就好了。别忘了要保证php环境装了相关扩展,否则连接不上哦!设置好之后,跑几句查询语句测试下,能打印结果就OK了,真心一试就懂! -
使用ThinkPHP连接SQLServer复杂吗?
嘿,别被吓到!其实关键是先在php.ini里激活SQLServer扩展,改配置文件把'DB_TYPE'改成'sqlsrv',再填好账号密码和端口。重启服务后写个查询试试,能跑通就表示成功了。小心点报错提示,网上都有解决方法,完全没有压力! -
验证码存session真的靠谱吗?会不会被覆盖?
超靠谱的!不过一定要像文中说的那样用手机号做唯一标识存验证码,比如用手机号的md5作为session键值,这样就不会被其他用户覆盖啦。再加上设置失效时间,安全性和实用性直线上升,别怪我没告诉你这个小技巧~ -
为什么要开启数据库字段缓存,有什么好处?
哦,这块超级重要!ThinkPHP开启字段缓存后,访问数据库时字段名字不需要每次重复查,直接从缓存读,速度飞快,页面加载更流畅,而且服务器负载都降低了不少。你说呢,谁不想自己网站快得飞起呀?就是这么简单小改动,效率大提升,值得一试!
发布评论