سلام وقت بخیر دوستان. من در قسمت search سایتم میخوام از ۴ جدول کوئری select بزنم در ۱ حلقه foreach . این کار رو چطور باید انجام بدم؟
عکس کدهام رو پیوست کردم.
[
attachment=661]
لطفاً بیشتر توضیح بدین. دقت کنین که سه دستور آخر شما فقط ستون title رو دارن و درنتیجه توی foreach بقیهی echoها پیغام خطا میدن. میتونین اینطوری کار کنین:
<?php
$records = [];
$records[] = $db->query('...');
$records[] = $db->query('...');
$records[] = $db->query('...');
$records[] = $db->query('...');
$i = 0;
foreach ($records as $record) {
foreach ($record as $row) {
?>
<tr>
<td><?= $i++ ?></td>
<td><?= $row['title'] ?? ' ' ?></td>
<td><?= $row['num'] ?? ' ' ?></td>
...
<?php
}
}
درمورد عملگر
?? (Null Coalescing) توی
این لینک توضیح داده شده.
سلام ممنون استاد شهرکی.
حلقه foreach دوم برای چی هست که مقادیر $record رو ریختین تو $row ؟
متشکر
شما یک آرایهی تودرتو دارین. آرایهی بیرونی، هر خونهاش خروجی یک کوئری هست. داخل هر خونه، یک آرایهی دیگه داریم که ستونها (فیلدها) داخلش هستن و با کمک حلقهی داخلی پیمایش میشه.