Rumah  >  Artikel  >  pangkalan data  >  Bagaimana untuk Mengakses Parameter Keluar dalam Prosedur Tersimpan MySQL dengan PHP?

Bagaimana untuk Mengakses Parameter Keluar dalam Prosedur Tersimpan MySQL dengan PHP?

DDD
DDDasal
2024-11-01 12:43:02550semak imbas

How to Access Out Parameters in MySQL Stored Procedures with PHP?

Mengakses Parameter Keluar dalam PHP Prosedur Tersimpan MySql

Apabila bekerja dengan prosedur tersimpan dalam MySQL menggunakan PHP, mengakses nilai parameter keluar boleh satu cabaran. Artikel ini menyediakan penyelesaian berdasarkan dokumentasi MySQL dan urutan forum.

Kaedah:

  1. Gunakan fungsi mysqli::multi_query() untuk melaksanakan tersimpan prosedur dan simpan hasilnya dalam pembolehubah ($res).
  2. Segera pembolehubah untuk menyimpan nilai parameter keluar ($x dalam contoh ini).
  3. Panggil mysqli::store_result() ke dapatkan semula set hasil.
  4. Gunakan mysqli::fetch_row() untuk lelaran ke atas baris dan paparkan nilai, termasuk nilai parameter keluar (@x).

Contoh Kod:

<code class="php">$mysqli = new mysqli("HOST", "USR", "PWD", "DBNAME");
$ivalue = 1;
$res = $mysqli->multi_query("CALL myproc($ivalue, @x);SELECT @x");

if ($res) {
  $results = 0;
  do {
    if ($result = $mysqli->store_result()) {
      printf("<b>Result #%u</b>:<br/>", ++$results);
      while ($row = $result->fetch_row()) {
        foreach ($row as $cell) {
          echo $cell, " ";
        }
      }
      $result->close();
      if ($mysqli->more_results()) {
        echo "<br/>";
      }
    }
  } while ($mysqli->next_result());
}

$mysqli->close();</code>

Dengan menggunakan kaedah ini, anda boleh mengakses nilai parameter keluar dalam prosedur tersimpan dengan berkesan daripada kod PHP anda.

Atas ialah kandungan terperinci Bagaimana untuk Mengakses Parameter Keluar dalam Prosedur Tersimpan MySQL dengan PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn