// Выводим список объявлений.
if(!isset($_GET['category'])){
$sql='SELECT items.id, name, description, price, username, date, image, address, categoryname, category_id
FROM items
INNER JOIN category
ON category_id = category.id
INNER JOIN users
ON user_id = users.id
ORDER BY id ASC';
$result=$pdo->query($sql);
while($row=$result->fetch())
{
$items[]=array(
'id'=>$row['id'],
'name'=>$row['name'],
'description'=>$row['description'],
'price'=>$row['price'],
'username'=>$row['username'],
'date'=>$row['date'],
'image'=>$row['image'],
'address'=>$row['address'],
'categoryname'=>$row['categoryname'],
'category_id'=>$row['category_id']
);
}
}
<?php
$sth = $dbh->prepare("SELECT name, colour FROM fruit");
$sth->execute();
/* Примеры различных режимов работы PDOStatement::fetch */
print("PDO::FETCH_ASSOC: ");
print("Возвращаем следующую строку в виде массива, индексированного именами столбцов\n");
$result = $sth->fetch(PDO::FETCH_ASSOC);
print_r($result);
print("\n");
print("PDO::FETCH_BOTH: ");
print("Возвращаем следующую строку в виде массива, индексированного как именами столбцов, так и их номерами\n");
$result = $sth->fetch(PDO::FETCH_BOTH);
print_r($result);
print("\n");
print("PDO::FETCH_LAZY: ");
print("Возвращаем следующую строку в виде анонимного объекта со свойствами, соответствующими столбцам\n");
$result = $sth->fetch(PDO::FETCH_LAZY);
print_r($result);
print("\n");
print("PDO::FETCH_OBJ: ");
print("Возвращаем следующую строку в виде анонимного объекта со свойствами, соответствующими столбцам\n");
$result = $sth->fetch(PDO::FETCH_OBJ);
print $result->name;
print("\n");
?>
Но когда ты сталкиваешься с реальным проектом (пришлось знакомиться с фреймворком, завязанном на ооп и кодом с его использованием), то прелесть этой абстракции теряется - объект слишком сложный, чтобы его представить, непонятно что от чего наследуется где-то в недрах кода, всё по 100 раз переопределяется... Абстракция на абстракции на абстракции...