php - foreach 循环中的自动递增值,但它一直在进行
问题描述
摘要:每次通过foreach
循环时都尝试添加+1,但即使我只期望循环中最多有11个结果,它也会继续上升
我试图在 the 上移动,$i++;
但没有运气,我还检查了我是否确保$i = 0;
在foreach
循环之外。
<?php
$facade = new NewsArticleFacade();
$news = $facade->getAll();
unset($facade);
$i = 0;
foreach($news as $new)
{
$i++;
if ($i = 5000000000000000)
{
echo "if statement: " . $i;
break;
}
$content = substr($new->getContent(), 0, 69);
echo "<div class='news'>";
echo "<h4><a href='/news/news.php?id=".$new->getNewsID()."'>".$new->getTitle()."</a></h4>";
echo "<span>by <a href='#'>".$new->getUser()->getUsername()."</a> - ".$new->getDate()->format("d-M-Y")."</span>";
echo "<p>".$content." ...</p>";
echo "<div class='gradient'></div>";
echo "<img src='img/news/0000000001.jpg'>";
echo "</div>";
}
?>
真正让我困惑的是,如果我删除循环的 if 语句,并且每次只回显 $i,它总共会回显 11 个,我的 if 做错了什么?
我希望循环通过 11 次,因为我在数据库中有 11 个条目用于此选择,但它继续上升,如果我在 if 语句中回显,我可以看到该值将只是我将 if 语句限制为是。
提前致谢!
解决方案
这个
if ($i = 5000000000000000)
是分配,在您的代码中没有什么意义。您可能想要进行比较操作,用==
if ($i == 5000000000000000)
推荐阅读
- javascript - 如何将数据从一个组件实时传递到另一个组件?
- apache-spark - Spark Structured Streaming:“最早”作为“startingOffsets”不起作用
- r - 循环中的括号语法问题
- swift - 将文件上传到 Firebase 存储错误 404 -“未找到。无法获取对象”
- javascript - 如何在颤振的 android 应用程序中嵌入 powerbi 报告?
- c++ - 代码在 Visual Studio 2019 中无法正常工作
- node.js - GraphQL 使用 nodejs 将 DB int 转换为 Enum 时出错
- php - PHP 致命错误:未捕获的 ArgumentCountError:功能参数太少
- intellij-idea - 在 IntelliJ 中使当前选项卡全屏显示
- arrays - 如何修复“在范围内找不到‘NSFetchRequest’错误