Mengambil Nilai Parameter Output dalam Prosedur Tersimpan PHP
Dalam bidang prosedur tersimpan PHP dan MySQL, mungkin tiba masanya anda memerlukan untuk mengakses nilai parameter output, yang dikenali sebagai parameter "keluar". Walaupun dokumentasi mungkin kelihatan jarang, terdapat cara untuk mencapainya dengan sambungan PHP MySQLi.
Andaikan anda mempunyai prosedur tersimpan yang ditakrifkan sebagai myproc(IN i int, OUT j int), dengan parameter i ialah input dan j ialah parameter keluaran. Untuk mengakses nilai output dalam PHP, anda boleh menggunakan langkah berikut:
<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>
Skrip ini memanfaatkan fungsi multi_query() dan store_result() MySQLi untuk melaksanakan prosedur tersimpan dan mendapatkan kedua-dua nilai input dan output. Nilai output diakses dengan memasukkan @x dalam pertanyaan SELECT, dengan x ialah nama parameter output dalam prosedur yang disimpan.
Atas ialah kandungan terperinci Bagaimanakah Anda Mendapatkan Nilai Parameter Output daripada Prosedur Tersimpan PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!