laravel 5 이상에서이를 달성하기위한 laravel 표준 또는 방법이 있습니까 미리 감사드립니다.
$sql = "SELECT * FROM categories";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
while ($row = $result->fetch_assoc()) {
echo $row['category']."[";
$sql2 = "SELECT * FROM subCategories where category_id = ".$row['id']." limit 4";
$result2 = $conn->query($sql2);
if ($result2->num_rows > 0) {
while ($row2 = $result2->fetch_assoc()) {
echo $row2['name']." ; ";
}
}
echo " ]</br>";
}
} else {
echo "0 results";
}
모델 을 정의 할 때 @Muhammad Sumon Molla Selim 과 동의합니다 Eloquent
. 그러나 그가 설명하는 방식으로 쿼리하면 N + 1 문제에 직면하게 됩니다. 당신은 Eager load
그것을 해결할 수 있습니다 . 이렇게하세요.
$categories = Category::with('subcategories')->get();
그런 다음 이렇게 반복 할 수 있습니다.
foreach ($categories as $category) {
foreach ($category->subcategories as $subCategory) {
echo $subcategory;
}
}
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다