-2

我试图用 CodeIgniter 做一个简单的新闻系统,我已经做到了。但是我在显示结果时遇到了问题。实际上,它们按照我的意愿正确显示,但我不能显示多个。

我为此使用了“foreach”,问题是,当我将我的风格放入 foreach 中并在其中显示时,它运行良好。但是当我尝试先定义这些数据,然后显示它们(在 foreach 之外)时,只显示一条记录。

我想做的,但不起作用

<?php foreach ($posts as $row) {
    $title = $row['title'];
    $text = $row['text'];
    $date = $row['date'];
    $autor_id = $row['user_id'];
}

echo $title; ?>

什么有效,但对我来说使用起来不舒服:

<?php foreach ($posts as $p): ?>
    <h2><?php echo htmlspecialchars($p['title']); ?></h2>
    <p><?php echo nl2br(htmlspecialchars($p['text'])); ?></p>
<?php endforeach; ?>

是否有可能以我尝试的方式做到这一点?

4

1 回答 1

0

只需将两者结合起来:

<?php foreach ($posts as $row) {
    $title = $row['title'];
    $text = $row['text'];
    $date = $row['date'];
    $autor_id = $row['user_id'];?>
    <h2><?php echo htmlspecialchars($title); ?></h2>
    <p><?php echo nl2br(htmlspecialchars($text)); ?></p>
<?php } ?>

Or use echo inside the loop and you don't need to break the PHP tags.

于 2013-03-29T22:56:23.967 回答