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 ?
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.
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.
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.
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();
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!