Ce face mysqli_fetch_column
Este cea mai scurtă metodă de a lua o singură valoare, de exemplu rezultatul unui SELECT COUNT(*). Fără al doilea parametru, returnează prima coloană; cu $column alegi coloana după poziție (0 este prima).
Exemplele de pe această pagină folosesc baza de date magazin, cu tabelul produse (coloanele id INT AUTO_INCREMENT, nume VARCHAR(100) NOT NULL, pret INT și stoc INT) și patru rânduri: Laptop (3200 lei, 5 buc.), Mouse (80 lei, 40 buc.), Monitor (900 lei, 0 buc.) și Tastatură (150 lei, 12 buc.). Comenzile SQL sunt explicate în secțiunea MySQL. Rezultatele au fost scrise pentru MySQL 8, pentru că exemplele au nevoie de un server de baze de date.
Parametri
| Parametru | Descriere |
|---|---|
$result |
Rezultatul interogării. |
$column |
Opțional. Poziția coloanei, începând de la 0. |
Ce returnează
Valoarea coloanei sau false dacă nu mai sunt rânduri.
Exemple
Exemplul 1: O singură valoare
<?php
$conn = mysqli_connect("localhost", "ana", "parola_ta", "magazin");
mysqli_set_charset($conn, "utf8mb4");
echo "Produse: " . mysqli_fetch_column(mysqli_query($conn, "SELECT COUNT(*) FROM produse")) . "\n";
$scumpe = mysqli_query($conn, "SELECT id, nume FROM produse WHERE pret > 500 ORDER BY pret DESC");
while (($nume = mysqli_fetch_column($scumpe, 1)) !== false) {
echo $nume . "\n";
}
Rezultat (cu un server MySQL și tabelul produse de mai sus)
Produse: 4
Laptop
Monitor
Greșeli frecvente
- Verifici sfârșitul rezultatului cu
while ($x = mysqli_fetch_column(...)). O valoare"0"sauNULLoprește bucla prea devreme; compară cu!== false.
Comenzi înrudite
mysqli_fetch_assoc / mysqli_fetch_all / mysqli_fetch_array: Citește următorul rând dintr-un rezultat, ca tablou cu numele coloanelor drept chei.mysqli_query: Trimite o interogare SQL către baza de date. Pentru SELECT returnează un rezultat din care citești rândurile.mysqli_num_rows: Returnează numărul de rânduri dintr-un rezultat SELECT.