0

3 つの引数を持つ関数があります。1 つは常に同じ、つまりデータベース接続です。

function threeArgs($one,$two,$dbh){
       // some code here
}

これは、渡したい定数引数です。

$dbh = new PDO(..............);

別の関数から threeArgs() 関数を呼び出そうとしていますが、3 つの引数ではなく 2 つの引数のみを渡したい場合:

threeArgs($one,$two);

これは単純に違いないか、それとも完全に間違っているかはわかりますが、どの用語を検索する必要があるのか​​ わかりません.

アップデート

関数内に db 接続を配置し、threeArgs() 関数内から呼び出しました。例えば;

function dbconnection(){
     $dbh = //connect to dataase
    return $dbh;
 }

これは、threeArgs() に追加したものです。

function threeArgs($one, $two){
    dbconnection();
}

これを行うより良い方法はありますか?

前もって感謝します。

4

1 に答える 1

0

変数に格納しますglobal:

$dbh = new POD();

function threeArgs ( $one, $two ) {
     global $dbh;
     // use  $dbh here...
}

変数の使用が気に入らない場合は代わりにglobal変数を使用できますstatic

function threeArgs ( $one, $two ) {
     static $dbh = NULL;
     if ( ! $dbh ) $dbh = new POD();
     // use  $dbh here...
}
于 2013-01-06T02:59:59.723 に答える