ThinkPHP 连接Oracle的配置写法,(使用Oci扩展而非PDO的写法)
測试了非常多遍,TP官网根本就没有给出正确的写法,并且网上搜索到的全都是错误的。
跟踪代码。终于找出了正确的配置写法,备份例如以下。(by default7#zbphp.com)
'DB_TYPE' => 'oracle', // 数据库类型 'DB_HOST' => 'oracle.zbphp.com', // server地址 'DB_NAME' => '(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=oracle.zbphp.com)(PORT=1029))(CONNECT_DATA=(SID=orcl)))', // server地址 'DB_USER' => 'zbphp', // username 'DB_PWD' => 'fuzb', // password 'DB_PORT' => 1029, // port 'DB_PREFIX' => 'TB_', // 数据库表前缀 'DB_CHARSET' => 'utf8', // 字符集 'DB_PARAMS' => array( 'persist' => true, //注意。这一个必须写 ),
特别强调:TP官网说TP支持PDO、Oracle。可是假设使用PDO根本就无法连接DSN带有 MSSQL、ORACLE 、OCI字串DSN!
提示要去官网下载PDO扩展!(欢迎交流 by default7#zbphp.com)
#截图:使用官网搜索到的配置參考,根本就无法连接上Oracle的,无论是用PDO还是OCI