Maison  >  Article  >  base de données  >  Comment accéder aux paramètres OUT en PHP lorsque vous travaillez avec des procédures stockées MySQL ?

Comment accéder aux paramètres OUT en PHP lorsque vous travaillez avec des procédures stockées MySQL ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-10-30 01:44:03412parcourir

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

Accès aux paramètres OUT en PHP avec les procédures stockées MySQL

Lorsque vous travaillez avec des procédures stockées dans MySQL à l'aide de PHP, obtenir la valeur d'un Le paramètre "OUT" peut être un défi en raison d'une documentation limitée. Cependant, ce processus est possible en utilisant l'API PHP mysqli.

Utilisation de mysqli

Considérez une procédure stockée nommée "myproc" avec un paramètre IN ("i") et un paramètre OUT ("j"). Pour récupérer la valeur de "j" à l'aide de PHP, suivez ces étapes :

<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>

Dans cet exemple, la valeur du paramètre "j" est stockée dans l'objet "result" et récupérée à l'aide de la méthode fetch_row() . Cela nous permet d'accéder et d'afficher la valeur du paramètre OUT de 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!

Déclaration:
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