Maison > base de données > tutoriel mysql > Comment récupérer les valeurs des paramètres de sortie des procédures stockées PHP ?

Comment récupérer les valeurs des paramètres de sortie des procédures stockées PHP ?

Barbara Streisand
Libérer: 2024-10-29 07:41:30
original
399 Les gens l'ont consulté

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

Récupération des valeurs des paramètres de sortie dans les procédures stockées PHP

Dans le domaine des procédures stockées PHP et MySQL, il peut arriver un moment où vous avez besoin pour accéder à la valeur d'un paramètre de sortie, appelé paramètre "out". Bien que la documentation puisse sembler clairsemée, il existe des moyens d'y parvenir avec l'extension PHP MySQLi.

Supposons que vous ayez une procédure stockée définie comme myproc(IN i int, OUT j int), où le paramètre i est une entrée et j est un paramètre de sortie. Pour accéder à la valeur de sortie en PHP, vous pouvez utiliser les étapes suivantes :

<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>
Copier après la connexion

Ce script exploite les fonctions multi_query() et store_result() de MySQLi pour exécuter la procédure stockée et récupérer les valeurs d'entrée et de sortie. La valeur de sortie est accessible en incluant @x dans la requête SELECT, où x est le nom du paramètre de sortie dans la procédure stockée.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal