首頁 >資料庫 >mysql教程 >如何從 PHP 預存程序中檢索輸出參數值?

如何從 PHP 預存程序中檢索輸出參數值?

Barbara Streisand
Barbara Streisand原創
2024-10-29 07:41:30404瀏覽

How Do You Retrieve Output Parameter Values from PHP Stored Procedures?

檢索PHP 預存程序中的輸出參數值

在PHP 和MySQL 預存程序領域,有時您可能需要存取輸出參數的值,稱為“out”參數。雖然文件可能看起來很少,但有一些方法可以使用 PHP MySQLi 擴充功能來實現此目的。

假設您有一個定義為 myproc(IN i int, OUT j int) 的預存過程,其中 i 參數是輸入j是輸出參數。要在 PHP 中存取輸出值,可以使用下列步驟:

<code class="php">// Establish a connection to the database
$mysqli = new mysqli("HOST", "USR", "PWD", "DBNAME");

// Input parameter value
$ivalue = 1;

// Execute the stored procedure and capture the result
$res = $mysqli->multi_query("CALL myproc($ivalue, @x);SELECT @x");

// Check if the execution was successful
if ($res) {
    $results = 0;

    // Iterate through the results
    do {
        // Store the result
        if ($result = $mysqli->store_result()) {
            printf("<b>Result #%u</b>:<br/>", ++$results);

            // Fetch and display the rows
            while ($row = $result->fetch_row()) {
                foreach ($row as $cell) echo $cell, " ";
            }
            $result->close();
        }
    } while ($mysqli->next_result());
}

// Close the connection
$mysqli->close();</code>

此腳本利用 MySQLi 的 multi_query() 和 store_result() 函數來執行預存程序並擷取輸入和輸出值。透過在 SELECT 查詢中包含 @x 來存取輸出值,其中 x 是預存程序中輸出參數的名稱。

以上是如何從 PHP 預存程序中檢索輸出參數值?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn