如何在每个循环的php中使用多个表的调用

我想使用for each循环显示MYSQL数据库中两个表的结果。目前,我有两个表分成两个独立的回路是这样的:如何在每个循环的php中使用多个表的调用

<?php 

$i = 0;

foreach (array_reverse ($articles) as $article){?>

<div class="greyvertical midtopmargin item leftpadding rightpadding">

<a href="article.php?id=<?php echo $article['article_id']; ?>"><img src="../lifestyle/photos/articles/<?php echo $article['photo_folder']; ?>/<?php echo $article['photo_1']; ?>" alt="item">

<h5 class="whitetext text2 extrabold smalltoppadding leftpadding"><?php echo $article['article_title']; ?></h5></a>

<p class="meta whitetext leftpadding smalltoppadding">

<?php echo $article['article_summary']; ?></p>

<a href="article.php?id=<?php echo $article['article_id']; ?>" class="whitetext text2 mediumfont leftpadding midbottommargin">READ ME</a>

</div>

<?php if (++$i == 5) break;

} ?>

<?php

$i = 0;

foreach (array_reverse ($posts) as $post){?>

<div class="greyvertical midtopmargin item leftpadding rightpadding">

<a href="post.php?id=<?php echo $post['post_id']; ?>"><img src="../lifestyle/photos/blog/<?php echo $post['photo_folder']; ?>/<?php echo $post['photo_bg']; ?>" alt="item">

<h5 class="whitetext extrabold text2 leftpadding smalltoppadding"><?php echo $post['post_title']; ?></h5></a>

<p class="meta leftpadding whitetext smalltoppadding">

<?php echo $post['post_summary']; ?></p>

<a href="post.php?id=<?php echo $post['post_id']; ?>" class="whitetext text2 mediumfont leftpadding midbottommargin">READ ME</a>

</div>

<?php if (++$i == 5) break;

} ?>

正如你可以看到他们是有细微的差别几乎是相同的,但我完全被卡住了如何将两者结合起来,没有他们是独立的,因为它是现在。任何人都可以让我知道如何将两个循环合并为一个?即,我想合并文章和帖子表,以便它们将显示为一个而不是单独显示。在此先感谢你们。

回答:

在你的问题上提出的意见是有意义的,你应该考虑它们,但是有一种方法可以通过使用PHP的MultipleIterator一次迭代两个数组。下面是如何这可能为你工作更简化的例子: -

$articles = array('article 1','article 2','article 3'); 

$posts = array('post 1', 'post 2', 'post 3');

$iterator1 = new ArrayIterator($articles);

$iterator2 = new ArrayIterator($posts);

$multiIterator = new MultipleIterator();

$multiIterator->attachIterator($iterator1);

$multiIterator->attachIterator($iterator2);

foreach($multiIterator as $combinedArray){

echo $combinedArray[0] . "<br/>\n";

echo $combinedArray[1] . "<br/>\n";

}

输出: -

article 1 

post 1

article 2

post 2

article 3

post 3

以上是 如何在每个循环的php中使用多个表的调用 的全部内容, 来源链接: utcz.com/qa/257236.html

回到顶部