Maison > développement back-end > Problème PHP > Comment déterminer si le résultat de la requête est vide en php

Comment déterminer si le résultat de la requête est vide en php

PHPz
Libérer: 2023-04-23 18:05:14
original
1460 Les gens l'ont consulté

En PHP, nous avons souvent besoin d'interroger la base de données et d'obtenir les résultats de la requête. Au cours de ce processus, les résultats de la requête peuvent parfois être vides (c'est-à-dire qu'aucun enregistrement ne répond aux conditions de la requête). À ce stade, nous devons juger les résultats de la requête pour un traitement ultérieur.

Alors comment déterminer si le résultat d'une requête est vide en PHP ? Expliquons-le en détail ci-dessous.

  1. Utilisez la fonction mysqli_num_rows

La fonction mysqli_num_rows est une fonction en PHP utilisée pour obtenir le nombre de lignes dans le résultat d'une requête. Lorsque le résultat de la requête est vide, la fonction renvoie 0. Par conséquent, nous pouvons utiliser la fonction mysqli_num_rows pour déterminer si le résultat de la requête est vide.

Exemple de code :

// 连接数据库
$conn = mysqli_connect('localhost', 'root', '123456', 'test');

// 查询结果
$result = mysqli_query($conn, "SELECT * FROM users WHERE name = '张三'");

// 判断查询结果是否为空
if(mysqli_num_rows($result) == 0) {
    echo '查询结果为空';
} else {
    // 处理查询结果
    while($row = mysqli_fetch_assoc($result)) {
        // ...
    }
}

// 关闭数据库连接
mysqli_close($conn);
Copier après la connexion

Dans le code ci-dessus, nous nous connectons d'abord à la base de données, puis exécutons une instruction de requête pour interroger l'utilisateur nommé "Zhang San". Ensuite, nous utilisons la fonction mysqli_num_rows pour obtenir le nombre de lignes dans le résultat de la requête et déterminer s'il est égal à 0. S'il vaut 0, cela signifie que le résultat de la requête est vide ; sinon, nous pouvons utiliser la boucle while pour parcourir les résultats de la requête et effectuer le traitement ultérieur.

  1. Utiliser une fonction vide

La fonction vide est une fonction couramment utilisée en PHP, qui permet de déterminer si une variable est vide. Lorsque le résultat de la requête est vide, nous pouvons utiliser la fonction vide pour juger.

Exemple de code :

// 连接数据库
$conn = mysqli_connect('localhost', 'root', '123456', 'test');

// 查询结果
$result = mysqli_query($conn, "SELECT * FROM users WHERE name = '张三'");

// 判断查询结果是否为空
if(empty(mysqli_fetch_assoc($result))) {
    echo '查询结果为空';
} else {
    // 处理查询结果
    mysqli_data_seek($result, 0); // 将结果指针重置到第一条记录
    while($row = mysqli_fetch_assoc($result)) {
        // ...
    }
}

// 关闭数据库连接
mysqli_close($conn);
Copier après la connexion

Dans le code ci-dessus, nous nous connectons d'abord à la base de données, puis exécutons une instruction de requête pour interroger l'utilisateur nommé "Zhang San". Ensuite, nous utilisons la fonction mysqli_fetch_assoc pour obtenir le premier enregistrement du résultat de la requête et le transmettons en tant que paramètre à la fonction vide pour jugement. Si la valeur de retour est vraie, cela signifie que le résultat de la requête est vide ; sinon, nous pouvons utiliser la boucle while pour parcourir les résultats de la requête et effectuer le traitement ultérieur.

  1. Utiliser la fonction is_null

La fonction is_null est une fonction en PHP utilisée pour déterminer si une valeur est nulle. Lorsque le résultat de la requête est vide, nous pouvons également utiliser la fonction is_null pour juger.

Exemple de code :

// 连接数据库
$conn = mysqli_connect('localhost', 'root', '123456', 'test');

// 查询结果
$result = mysqli_query($conn, "SELECT * FROM users WHERE name = '张三'");

// 判断查询结果是否为空
if(is_null(mysqli_fetch_assoc($result))) {
    echo '查询结果为空';
} else {
    // 处理查询结果
    mysqli_data_seek($result, 0); // 将结果指针重置到第一条记录
    while($row = mysqli_fetch_assoc($result)) {
        // ...
    }
}

// 关闭数据库连接
mysqli_close($conn);
Copier après la connexion

Dans le code ci-dessus, nous nous connectons d'abord à la base de données, puis exécutons une instruction de requête pour interroger l'utilisateur nommé "Zhang San". Ensuite, nous utilisons la fonction mysqli_fetch_assoc pour obtenir le premier enregistrement du résultat de la requête et le transmettons en tant que paramètre à la fonction is_null pour jugement. Si la valeur de retour est vraie, cela signifie que le résultat de la requête est vide ; sinon, nous pouvons utiliser la boucle while pour parcourir les résultats de la requête et effectuer le traitement ultérieur.

Résumé

En PHP, nous pouvons utiliser la fonction mysqli_num_rows, la fonction vide ou la fonction is_null pour déterminer si le résultat de la requête est vide. Chacune de ces méthodes a ses propres avantages et inconvénients, et vous devez choisir la méthode qui vous convient en fonction du scénario commercial spécifique.

Quelle que soit la méthode utilisée, nous devons faire attention à l'ouverture et à la fermeture de la connexion à la base de données pour éviter des problèmes tels qu'une fuite de ressources. De plus, lorsque le résultat de la requête est vide, nous pouvons également inviter l'utilisateur à effectuer des opérations pertinentes pour améliorer l'expérience utilisateur.

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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal