thinkphp5链接sql_server踩的坑

运行环境centos6.5,php7。若在低版本,已安装sqlsrv之类扩展可以忽略本篇文章。

根据业务需要,将原先网站用php重写,此时需要配置php连接sql server(已开启外网连接,ip已过白名单)。
环境搭建好之后,访问出现:

thinkphp5链接sql_server踩的坑_第1张图片

这是因为mssql扩展已经弃用,需要安装pdo-dblib,同时将/thinkphp/library/think/db/connector/Sqlsrv.php中修改为:

thinkphp5链接sql_server踩的坑_第2张图片

再次访问,还是会报错:

thinkphp5链接sql_server踩的坑_第3张图片

经过各种百度,谷歌还是无果,最后根据dblib+freedtsd不使用框架用pdo方式链接,居然成功了,欣喜若狂,最后修改上面thinkphp底层文件

thinkphp5链接sql_server踩的坑_第4张图片

最终可以获取到数据。
备注:若使用源码安装则需要安装freetds,centos下使用yum源安装直接安装pdo-dblib即可,希望给遇到相同情况的小伙伴一些帮助

你可能感兴趣的:(php)