Tenho as seguintes :
create or replace type t_fone as object(
codPais varchar2(2) ,
ddd varchar2(2) ,
fone varchar2(8) ,
descricao varchar(30) );
create or replace type t_fones as varray(7) of t_fone;
/
create or replace type t_empExp as object(
nome varchar2(30) ,
cnpj varchar2(12) ,
cobertura t_cobertura ,
endereco t_endereco,
fones t_fones );
<?php
$db_conn = ocilogon("===","**",**");
$cmdstr = " begin select fones into :fones
from pFisicas p where deref(p.endereco.pais).nome = 'Paraguai'; end;";
$statement = oci_parse($db_conn, $cmdstr);
$col = oci_new_collection($db_conn, 'T_FONES' , 'FONES');
//$col2 = oci_new_collection($db_conn , 'T_FONE');
oci_bind_by_name($statement, 'FONES', $col, -1, SQLT_RDD);
oci_bind_by_name($statement, 'T_FONE', $col, -1, SQLT_RDD);
$result = ociexecute($statement);
//$nrows = ocifetchstatement($statement, $r);
//print_r(($col->getElem(0))
/*for ($i = 0; $i < $col->size(); $i++)
{
print $col->getElem($i) . "<br>";
}
*/
?>
Funciona para consultas mas simples , quando um varray e de um tipo ativo como number , mas com que eu faço quando tenho um varray de um tipo estruturado ?