MySQL ストアド プロシージャを使用して PHP の OUT パラメータにアクセスする
PHP を使用して MySQL のストアド プロシージャを操作する場合、 「OUT」パラメータは、ドキュメントが限られているため、難しい場合があります。ただし、このプロセスは、mysqli PHP API を利用することで可能です。
mysqli の使用
1 つの IN パラメータ (「i」) を持つ「myproc」という名前のストアド プロシージャを考えてみましょう。および 1 つの OUT パラメータ (「j」)。 PHP を使用して「j」の値を取得するには、次の手順に従います。
<code class="php">$mysqli = new mysqli( "HOST", "USR", "PWD", "DBNAME" ); $ivalue=1; // Execute the stored procedure and store the result. $res = $mysqli->multi_query( "CALL myproc($ivalue,@x);SELECT @x" ); if( $res ) { $results = 0; // Iterate through the results. do { if ($result = $mysqli->store_result()) { // Display the result header. printf( "<b>Result #%u</b>:<br/>", ++$results ); // Fetch and display the OUT parameter value. while( $row = $result->fetch_row() ) { foreach( $row as $cell ) { echo $cell, "&nbsp;"; } } $result->close(); if( $mysqli->more_results() ) echo "<br/>"; } } while( $mysqli->next_result() ); } // Close the mysqli connection. $mysqli->close();</code>
この例では、「j」パラメータの値は「result」オブジェクトに格納され、fetch_row() メソッドを使用して取得されます。 。これにより、ストアド プロシージャから OUT パラメータの値にアクセスして表示できるようになります。
以上がMySQL ストアド プロシージャを使用するときに PHP で OUT パラメータにアクセスする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。