Здравствуйте. Я пытаюсь получить доступ к простой функции, которая возвращает результат запроса select, и когда я обращаюсь к нему с помощью PHP, он отбрасывает на меня ресурс (5), а не результат.
$connect = oci_connect('tiger','scott','host/user');
if(!$connect){
$e = oci_error();
trigger_error(htmlentities($e['message'],ENT_QUOTES),E_USER_ERROR);
}
$qu = oci_parse($connect, 'select selectMe(:name) from dual');
$name = (string)'test1';
oci_bind_by_name($qu,":name",$name);
oci_execute($qu);
$row = oci_fetch_assoc($qu);
var_dump($row);
Функция selectMe довольно проста и просто извлекает данные из таблицы и возвращает несколько строк, соответствующих условию.
CREATE OR REPLACE FUNCTION selectMe( temp_name varchar2(100) )
return SYS_REFCURSOR is my_ret SYS_REFCURSOR;
BEGIN
open my_ret
FOR select myTab_ID, myTab_NAME, myTab_AGE, myTab_SCORE
from myTab
where trim(myTab_name) = temp_name;
RETURN my_ret;
END;
Что довольно просто.Теперь я не могу понять, почему я получаю ресурс (5), который указывает на ошибку.Фактическое сообщение, которое я получаю, когда я var_dump, получаю результат
array (1) {["SELECTME (: NAME)"] => resource (5) типа (оператор oci8)