"Se um trabalhador quiser fazer bem o seu trabalho, ele deve primeiro afiar suas ferramentas." - Confúcio, "Os Analectos de Confúcio. Lu Linggong"
Primeira página > Programação > Como recuperar com eficiência a contagem de linhas de uma tabela MySQL usando PHP?

Como recuperar com eficiência a contagem de linhas de uma tabela MySQL usando PHP?

Publicado em 2024-12-21
Navegar:214

How to Efficiently Retrieve the Row Count of a MySQL Table Using PHP?

Como recuperar a contagem de linhas na tabela MySQL usando PHP processualmente

Você procura determinar o número total de linhas em uma tabela MySQL e armazenar em uma variável, $count. Sua tentativa inicial produziu a palavra "Array".

A solução envolve a utilização de mysqli_fetch_assoc($result) para recuperar o valor da contagem. Aqui estão três maneiras de fazer isso:

  1. Usando o alias da coluna:
$sql = "SELECT COUNT(*) AS cnt FROM news";
$result = mysqli_query($con, $sql);
$count = mysqli_fetch_assoc($result)['cnt'];
  1. Usando matriz numérica:
$sql = "SELECT COUNT(*) FROM news";
$result = mysqli_query($con, $sql);
$count = mysqli_fetch_row($result)[0];
  1. PHP 8.1 e superior:
$sql = "SELECT COUNT(*) FROM news";
$result = mysqli_query($con, $sql);
$count = mysqli_fetch_column($result);

Além disso, é recomendado aprender OOP (Programação Orientada a Objetos) para um código mais limpo e legível. A versão OOP do seu código:

$sql = "SELECT COUNT(*) FROM news";
$count = $con->query($sql)->fetch_row()[0];

Para consultas com variáveis, instruções preparadas podem ser empregadas:

$sql = "SELECT COUNT(*) FROM news WHERE category=?";
$stmt = $con->prepare($sql);
$stmt->bind_param('s', $category);
$stmt->execute();
$count = $stmt->get_result()->fetch_row()[0];
Tutorial mais recente Mais>

Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.

Copyright© 2022 湘ICP备2022001581号-3