Alv*_*aro 2 php oracle-call-interface oracle11g iis-7.5
我正在尝试从Oracle包调用一个函数,我收到此错误:
PHP致命错误:只能通过引用传递变量
这是我的代码:
$connection = $this->getConnection();
if (!$connection){
return null;
}
$s = oci_parse($connection, "begin my_package.my_function(
:param1
); end;");
//getting the error in this following line:
oci_bind_by_name($s, ":param1", "13")
if($result = oci_execute($s)){
....
}
...
Run Code Online (Sandbox Code Playgroud)
我一直在查看其他帖子,但这些错误完全相同,但似乎没有一个与此问题相关.
我在Windows 7机器上使用PHP 5.5.6而不是IIS 7.5.
这是我的pacakage功能的定义:
FUNCTION my_function(param1 IN VARCHAR2) RETURN CLOB IS
BEGIN
-- etc...
-- etc...
END;
Run Code Online (Sandbox Code Playgroud)
小智 7
oci_bind_by_name的第三个参数通过引用传递,因此您需要先将其存储在变量中:
$param1 = "13";
oci_bind_by_name($s, ":param1", $param1);
Run Code Online (Sandbox Code Playgroud)