【发布时间】:2012-05-21 01:07:07
【问题描述】:
我正在从我的模型中获取一组数据,并使用 php foreach 语句将其显示在视图中。我正在添加另一层逻辑以仅显示某些书签 ID。
数据显示正常;但由于某种原因,“else”消息(与第一个 if 子句相关)没有显示是否没有返回数据。我需要弄清楚如何显示该消息。
<?php
if ($bookmark):
foreach($bookmark as $b): ?>
<?php if ($b->bookmark_id != 0) { ?>
<li><?php echo $bk->user_id; ?> <?php echo $bk->bookmark_name; ?></li>
<?php } ?>
<?php
endforeach;
else:
print "Your bookmark list is empty.";
endif;
?>
【问题讨论】:
-
If-else 条件错误.. 另外 php 中没有什么叫 endforeach
-
您的
$bookmark可能不为空,这就是else不触发的原因 - 当您知道没有结果时尝试在第一个if中回显它 -
@J A,PHP 为其某些控制结构提供了另一种语法;即 if、while、for、foreach 和 switch。在每种情况下,替代语法的基本形式是将左大括号更改为冒号 (:),将右大括号更改为 endif;、endwhile;、endfor;、endforeach; 或 endswitch;。 Read Here!
-
@Zuul:哇,不知道 php 中的这个特性。。点了。谢谢。
-
@ZoltanToth 我已经回应了它,但没有任何结果,但仍然没有收到 else 消息。关于为什么 else 可能不起作用的任何其他想法?
标签: php if-statement foreach