ホームページ  >  記事  >  データベース  >  MySQL ストアド プロシージャを使用するときに PHP で OUT パラメータにアクセスする方法

MySQL ストアド プロシージャを使用するときに PHP で OUT パラメータにアクセスする方法

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-10-30 01:44:03409ブラウズ

How to Access OUT Parameters in PHP When Working with MySQL Stored Procedures?

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, "&amp;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 サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。