[PHP-users 32085] Re: phpで execute を関数化

KOYAMA Tetsuji koyama @ hoge.org
2007年 5月 9日 (水) 17:08:39 JST


小山です。

On 5/9/07, Shin Arita <shin.arita @ plusonesystem.co.jp> wrote:
> 以下のコードだと、実行時にexecuteのパラメタが足りないというような
> ワーニングが出るのですが、どのようにして、パラメータをセットすれば
> よいのでしょうか?

ibase_execute() のマニュアルを読みましたか?

http://jp.php.net/manual/ja/function.ibase-execute.php

マニュアルの例では、パラメータを配列ではなく一つずつ引数に
渡していますね。

> -関数-
> function db_execute($con, $sql, $params){
>  $stmt = ibase_prepare($con, $sql);
>  $rset = ibase_execute($stmt, $params);
>  return ibase_fetch_object($rset);
> }

なので、このように array で渡ってきた $params をそのまま渡す
のでは動作しません。

  array_unshift($params, $stmt);
  $rset = call_user_func_array('ibase_execute', $params);

こんな感じでしょうか。

-- 
    小山哲志@ビート・クラフト
    koyama @ beatcraft.com
    koyama @ hoge.org


PHP-users メーリングリストの案内