Maison >développement back-end >tutoriel php >Comment récupérer efficacement un seul enregistrement d'une base de données MySQL à l'aide de mysqli ?

Comment récupérer efficacement un seul enregistrement d'une base de données MySQL à l'aide de mysqli ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-12-25 19:56:17729parcourir

How to Efficiently Retrieve a Single Record from a MySQL Database Using mysqli?

Récupération d'un seul enregistrement à l'aide de mysqli

Lorsque vous travaillez avec des bases de données MySQL, des situations peuvent survenir dans lesquelles vous devez récupérer un seul enregistrement au lieu de parcourir plusieurs résultats. Ce guide montrera comment récupérer une seule ligne ou valeur d'une base de données à l'aide de mysqli.

Récupération d'un tableau associatif

Pour récupérer une ligne entière sous forme de tableau associatif, utilisez la syntaxe suivante :

$row = $result->fetch_assoc();

Cela renvoie un tableau où les clés sont les noms de colonnes et les valeurs sont les valeurs respectives data.

Récupération d'une valeur unique

Si une seule valeur est requise, vous pouvez utiliser :

// PHP >= 8.1
$value = $result->fetch_column();

// Legacy PHP versions
$value = $result->fetch_row()[0] ?? false;

Dans le cas des versions PHP inférieures à 8.1, le La méthode fetch_row() est utilisée et le premier index du tableau renvoyé est affecté à la variable $value. Le ?? L'opérateur false attribue la valeur par défaut false si la colonne est NULL.

Requête avec variables

Lors de l'utilisation de variables dans une requête, une instruction préparée doit être utilisée :

// PHP >= 8.2
$row = $conn->execute_query($query, [$id])->fetch_assoc();

// Legacy PHP versions
$stmt = $conn->prepare($query);
$stmt->bind_param("s", $id);
$stmt->execute();
$result = $stmt->get_result();
$row = $result->fetch_assoc();

Aucune variable dans la requête

Si aucune variable n'est impliquée, utilisez la méthode query() :

// Array
$user = $conn->query("SELECT * FROM users LIMIT 1")->fetch_assoc();

// Value
$count = $conn->query("SELECT count(*) FROM users")->fetch_column();

// Value < 8.1
$count = $conn->query("SELECT count(*) FROM users")->fetch_row()[0];

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