1

我正在使用数据库进行多次插入/更新,并且过程非常缓慢。

在尝试修复它的过程中,我发现ibase_prepare并且ibase_execute现在我正在开发一个函数来进行所有更新和插入。

问题在于要插入/更新的字段数量,它们是可变的,我不知道如何调用ibase_execute($query, $field1, $field2,..., $fieldx);

有时是 1,其他是 2,其他更多。

<?php
$dbh = ibase_connect($host, $username, $password);
$updates = array(1 => 'Eric',5 => 'Filip',7 => 'Larry');
$query = ibase_prepare($dbh, "UPDATE FOO SET BAR = ? WHERE BAZ = ?");
foreach ($updates as $baz => $bar) {
    ibase_execute($query, $bar, $baz);
}
?>

有什么想法可以合作吗?是否可以在执行时定义函数?在流或类似的东西上?

谢谢你的时间

4

1 回答 1

1

call_user_func_array应该能够做你想做的事。只需将您的字段放入数组中:

$result = call_user_func_array("ibase_execute", array("field1"); //Just 1 field
$result = call_user_func_array("ibase_execute", array("field1", "field2", "field3")); //3 fields
于 2012-04-16T08:36:13.923 回答