PHP MySQLi Functions

PHP mysqli_fetch_assoc() Function

Матеріал представлений на сторінці за w3schools та php.net ресурсами.

Загальна інформація

Основи

Функція php mysqli fetch_assoc() отримує асоціативний рядок даних з результуючої вибірки даних.


Документація mysqli_fetch_assoc php.

Fetch_assoc() належить методу класу mysqli_result.


Доречним буде переглянути матеріал за даною тематикою: результуюча вибірка та асоціативний масив.

Синтаксис

Функція fetch_array() може бути виконана, як в об'єктно-орієнтовному стилі програмування, так і в процедурному стилі програмування.

Обєктно-орієнтовний стиль програмування

array mysqli_result::fetch_assoc ( void )

Процедурний стиль:

array mysqli_fetch_assoc ( result );

параметр:
result - обов'язковий (процедурний стиль), визначає вибірку результуючих даних, що вказані в mysqli_query(), mysqli_store_result() чи mysqli_use_result().


Технічні дані: Повертає асоціативний масив, що складається з даних вказаного рядка. NULL - якщо відсутні рядки в результуючій вибірці даних.


Зразок php-скрипту в стилі ООП:

<?php
$db = new mysqli ("host", "user""pass""DB");
$query= "SELECT id,Name,profession FROM My_Test";
/* Отримуємо результуючу вибірку даних із БД */
$result  $db->query($query);
while ($row $result->fetch_assoc()) {
   /*виводимо асоціативний рядок*/
   echo $row['id'], $row['Name'] , $row['profession'];
};
/* Очищуємо результуючу вибірку даних */
$result->free_result();
/* Закриваємо зєднання */
$db->close();
?>

Скрипт в процедурному стилі:

<?php
$link 
mysqli_connect("host""user" "pass""db" );
$query "SELECT Name, CountryCode FROM City";
if (
$result mysqli_query($link$query)) {
/* Дістаємо асоціативний масив даних */
while ($row mysqli_fetch_assoc($result)) {
    
printf ("%s (%s)\n"$row["Name"], $row["CountryCode"]);
}
/* Очищуємо результуючу вибірку даних */
mysqli_free_result($result);
}
/* Закриваємо зєднання */
mysqli_close($link);
?>


Приклад застосування функції mysqli_fetch_assoc()

Для прикладу візьмемо таблицю Transit ( Перевезення ) з даними.

№ рейсуДатаВантаж
100112-03-2005Залізо
100212-03-2005Продовольчі товари
100313-03-2005Контейнер
100417-03-2005Компютерні комплектуючі
100518-03-2005Продовольчі товари


Протестуємо запит скрипту в процедурному стилі кодування

<?php
$con=mysqli_connect("host","user","pass","db");

$sql="SELECT * FROM Transit";

/* Отримуємо результуючу вибірку даних із БД */
$result=mysqli_query($con,$sql);

/* Отримуємо асоціативний масив першого рядка */
$row=mysqli_fetch_assoc($result);
printf ("Рейс:%s Дата:%s Вантаж:%s \n",$row["id"],$row["Tr_date"],$row["Goods"]);

/* Очищаємо результуючу вибірку */
mysqli_free_result($result);

/* Закриваємо зєднання із БД */
mysqli_close($con);
?>

Результат виконання php-кодування:


Рейс: 1 Дата: 2005-03-12 Вантаж: Залізо