PHP MySQL ストアド プロシージャの OUT パラメータへのアクセス
ストアド プロシージャは、複雑なデータベース操作をカプセル化するのに役立ちます。ただし、PHP で OUT パラメーターの出力を取得するのは困難な場合があります。この記事では詳細な解決策を提供します。
解決策
ストアド プロシージャを呼び出します: 以下の構文に示すように OUT パラメータを指定して、multi_query() メソッドを使用してストアド プロシージャを実行します:
<code class="php">$mysqli->multi_query("CALL myproc($ivalue,@x);SELECT @x");</code>
結果の取得: multi_query() メソッドは、成功を示すブール値を返します。呼び出しが成功した場合:
例
IN パラメータ i と OUT パラメータ j を持つストアド プロシージャ myproc を考えます。 。 OUT パラメータにアクセスするための PHP コードの例を次に示します。
<code class="php">$mysqli = new mysqli("HOST", "USR", "PWD", "DBNAME"); $ivalue = 1; $res = $mysqli->multi_query("CALL myproc($ivalue,@x);SELECT @x"); if ($res) { $result = $mysqli->store_result(); $row = $result->fetch_row(); $output = $row[0]; // OUT parameter value $result->close(); } $mysqli->close();</code>
このコードは、OUT パラメータ j を取得して $output 変数に格納する方法を示しています。
以上がPHP で MySQL ストアド プロシージャから OUT パラメータを取得する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。