参数(私有字符串):
$this->username = 'app';
$this->password = 'passwd';
$this->service = '//local/DEV';
不起作用:
$conn = oci_connect($this->username,$this->password,$this->service);
工作:
$conn = oci_connect('app','passwd','//local/DEV');
为什么oci_connect不像对象属性那样作为参数?使用对象属性时出现无效的登录错误,但在使用字符串时成功。所有这些代码都在对象的__construct()中。
答案 0 :(得分:1)
对象中有//localhost/DEV
但字符串中有//local/DEV
,因此它们不是同一个服务。
答案 1 :(得分:0)
您是否尝试过使用PDO进行连接?我知道他们已经弃用了oracle上不确定的mysql_扩展名。
http://www.php.net/manual/en/ref.pdo-oci.connection.php
与您的信息摘录:
$dbc = new PDO('oci:dbname=local/DEV;charset=CL8MSWIN1251', 'app', 'passwd');