Php 从coursor创建多维阵列的有效方法
我正在执行一个游标。我已经删除了如何调用和执行该过程的代码。这部分是有效的。 最后我有一个不大的光标。我正在调用这个过程,它在页面上多次返回这个游标,我需要从中创建一个多维数组。此数组应如下所示:Php 从coursor创建多维阵列的有效方法,php,arrays,oracle,multidimensional-array,Php,Arrays,Oracle,Multidimensional Array,我正在执行一个游标。我已经删除了如何调用和执行该过程的代码。这部分是有效的。 最后我有一个不大的光标。我正在调用这个过程,它在页面上多次返回这个游标,我需要从中创建一个多维数组。此数组应如下所示: $ret = oci_execute($outrefc) ; while ($row = @oci_fetch_array($outrefc)) { foreach (array_keys($row) as $key) {
$ret = oci_execute($outrefc) ;
while ($row = @oci_fetch_array($outrefc))
{
foreach (array_keys($row) as $key)
{
$res[$i][$key] = $row[$key];
}
$i++;
}
有没有办法让上面的代码段更快?
多维数组应保持原样。我只是想知道我是否能以更有效的方式创造它
谢谢大家! 我投票结束这个问题,因为它是关于代码审查的,可能是这样的:
$ret=oci\u execute($outrefc);而($row=@oci_fetch_array($outrefc)){$res[$i]=$row;$i++;}
@quentino谢谢!但看起来确实像另一个一样慢……也许慢是从光标抓取的结果?@tbone我也用oci_fetch_all($outrefc,$res,null,null,oci_FETCHSTATEMENT_BY_ROW+oci_NUM)试过了代码>。但同样的结果。那么,我可以加快抓取速度吗?我投票将这个问题作为离题题来结束,因为它是关于代码审查的。可能是这样的:$ret=oci\u execute($outrefc);而($row=@oci_fetch_array($outrefc)){$res[$i]=$row;$i++;}
@quentino谢谢!但看起来确实像另一个一样慢……也许慢是从光标抓取的结果?@tbone我也用oci_fetch_all($outrefc,$res,null,null,oci_FETCHSTATEMENT_BY_ROW+oci_NUM)试过了代码>。但同样的结果。那么我可以加快抓取速度吗?