PHP利用pdo_odbc实现连接数据库示例【基于ThinkPHP5.1搭建的项目】

时间:2022-07-27
本文章向大家介绍PHP利用pdo_odbc实现连接数据库示例【基于ThinkPHP5.1搭建的项目】,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

本文实例讲述了PHP利用pdo_odbc实现连接数据库。分享给大家供大家参考,具体如下:

目的:从sql server数据库里面把某个视图文件调用出来,以键值对的方式显示在页面上。

利用pdo odbc来实现PHP连接数据库:

在PHP配置文件里面开启pdo_odbc.dll服务。重启Apache服务器。

在ThinkPHP5.1的项目中在模块里添加config添加规定好的样式数据库:

代码如下:

<?php
return [
// 数据库类型
'type' =  'sqlsrv',
// 服务器地址
'hostname' =  'localhost',
// 数据库名
'database' =  'mysql',
// 用户名
'username' =  'sa',
// 密码
'password' =  '123456',
// 端口
'hostport' =  '',
// 连接dsn
'dsn' =  'odbc:Driver={SQL Server};Server=localhost;Database=mysql',
// 数据库连接参数
'params' =  [],
// 数据库编码默认采用utf8
'charset' =  'utf8',
// 数据库表前缀
'prefix' =  '',
// 数据库调试模式
'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,
// Builder类
'builder' =  '',
// Query类
'query' =  'thinkdbQuery',
// 是否需要断线重连
'break_reconnect' =  false,
// 断线标识字符串
'break_match_str' =  [],
];
? 

在控制器controller里面建一个控制文件Test.php

代码如下:

<?php
namespace appindexcontroller;
use thinkDb;
use thinkController;
class Test extends Controller
{
public function zz(){
$data=Db::view('View_2')- select();
echo json_encode($data);
}
}
? 

最后调用入口文件即可访问。

http://localhost:81/1111/tp5/public/index/test/zz

我的效果:

[{“111″:”123″,”1112″:”LLP”,”232″:”1″,”ROW_NUMBER”:”1″},{“111″:”123″,”1112″:”BB”,”232″:”2″,”ROW_NUMBER”:”2″}]