Maison  >  Article  >  développement back-end  >  Explication détaillée de la méthode fetch() pour obtenir des jeux de résultats dans PDO

Explication détaillée de la méthode fetch() pour obtenir des jeux de résultats dans PDO

黄舟
黄舟original
2017-04-28 17:38:4018521parcourir

Explication détaillée de la méthode fetch() pour obtenir des ensembles de résultats dans PDO

Lorsque nous avons introduit PHP pour faire fonctionner MYSQL auparavant, nous avons également introduit plusieurs méthodes pour obtenir des ensembles de résultats Pour ceux qui ne sont pas familiers avec les enregistrements, vous pouvez consulter notre sujet spécial PHP Operation MySQL pour passer en revue. Il existe également plusieurs méthodes pour obtenir l'ensemble de résultats dans PDO. Nous présenterons ces méthodes une par une !

Dans l'article précédent "Trois façons d'exécuter des instructions SQL dans PDO", nous avons présenté trois façons pour PDO d'exécuter des instructions SQL, donc dans cet article nous présenterons l'acquisition PDO Le fetch( ), une des nombreuses méthodes du jeu de résultats ! La méthode

fetch() obtient la ligne de données suivante dans l'ensemble de résultats. Le format de syntaxe spécifique de cette fonction est le suivant :

mixed PDOStatement::fetch ([ int $fetch_style [, int $cursor_orientation = PDO::FETCH_ORI_NEXT [, int $cursor_offset = 0 ]]] )

Paramètre fetch_style : contrôle la méthode de retour de. l'ensemble de résultats, avec des valeurs facultatives. Comme indiqué dans le tableau suivant :

说      明
PDO::FETCH_ASSOC 关联数组形式。
PDO::FETCH_NUM 数字索引数组形式。
PDO::FETCH_BOTH 两者数组形式都有,这是默认的。
PDO::FETCH_OBJ 按照对象的形式,类似于以前的mysql_fetch_object()函数。
PDO::FETCH_BOUND 以布尔值的形式返回结果,同时将获取的列值赋给bindParam()方法中指定的变量。
PDO::FETCH_LAZY 以关联数组、数字索引数组和对象3种形式返回结果。

Paramètre curseur_orientation : un curseur défilant de l'objet PDOStatement, qui peut obtenir une ligne spécifiée.

Paramètre curseur_offset : Le décalage du curseur.

L'exemple suivant utilise la méthode fetch() pour obtenir la ligne de données suivante dans l'ensemble de résultats, puis utilise l'instruction while pour terminer la sortie en boucle des données dans la base de données. :

Créez d'abord un fichier php et utilisez PDO Connect à la base de données MySQL, puis définissez l'instruction de requête SELECT, utilisez les méthodes préparer() et exécuter() pour effectuer l'opération de requête, puis renvoyez la ligne suivante de données dans l'ensemble de résultats via la méthode fetch(), et définissez l'ensemble de résultats pour qu'il soit renvoyé sous la forme d'un tableau associatif, et enfin utilisez l'instruction while L'instruction termine la sortie en boucle des données. Le code spécifique est le suivant :

<?php
header("Content-Type:text/html; charset=utf-8");    //设置页面的编码格式
$dbms = "mysql";                                  // 数据库的类型
$dbName ="php_cn";                                //使用的数据库名称
$user = "root";                                   //使用的数据库用户名
$pwd = "root";                                    //使用的数据库密码
$host = "localhost";                              //使用的主机名称
$dsn  = "$dbms:host=$host;dbname=$dbName";
try{
    $pdo=new PDO($dsn,$user,$pwd);//初始化一个PDO对象,就是创建了数据库连接对象$pdo
    $query="select * from user";//需要执行的sql语句
    $res=$pdo->prepare($query);//准备查询语句
    $res->execute();            //执行查询语句,并返回结果集
    ?>
    <table border="1" width="500">
        <tr>
            <td height="22" align="center" valign="middle">id</td>
            <td height="22" align="center" valign="middle">用户名</td>
            <td height="22" align="center" valign="middle">密码</td>
        </tr>
        <?php
    while($result=$res->fetch(PDO::FETCH_ASSOC)){         // 循环输出查询结果集,并且设置结果集为关联数据形式。
        ?>
        <tr>
        <td height="22" align="center" valign="middle"><?php echo $result["id"];?></td>
        <td height="22" align="center" valign="middle"><?php echo $result["username"];?></td>
        <td height="22" align="center" valign="middle"><?php echo $result["password"];?></td>
        </tr>
<?php
    }
}catch(Exception $e){
    die("Error!:".$e->getMessage().&#39;<br>&#39;);
}
?>
</table>

Le résultat final est le suivant :

Explication détaillée de la méthode fetch() pour obtenir des jeux de résultats dans PDO

À propos de fetch() pour obtenir l'ensemble de résultats dans PDO Nous présenterons la méthode ici Vous pouvez. essayez-le localement et contactez-nous pour consolider ce que vous avez appris. Dans le prochain article, nous continuerons à vous présenter la méthode d'obtention du jeu de résultats dans PDO. Pour plus de détails, veuillez lire " Explication détaillée de fetchAll(. ) méthode pour obtenir des ensembles de résultats dans PDO 》 !

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