1

私はいくつかの挿入/更新を行うデータベースで作業していますが、プロセスは非常に遅いです。

それを修正しようとしている過程で私は見つけましたibase_prepareibase_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 に答える