php - php做而不等于不结束
问题描述
尝试使用 do while 循环,但它永远不会完成。不知道为什么
<?php
$a = "2018-11-28T14:36:27+00:00";
$b = "2018-11-28T14:43:27+00:00.";
if ($a !== $b) {
echo "not equal";
}
else {
echo "equal";
}
do {
echo "a";
} while ($a !== $b);
解决方案
做while语句:
“do-while 语句中的表达式在循环体执行后计算。因此,循环体总是至少执行一次。”
“do-while 循环与 while 循环非常相似,只是在每次迭代结束时而不是在开始时检查真值表达式。与常规 while 循环的主要区别在于,do-while 循环的第一次迭代得到保证运行(真值表达式仅在迭代结束时检查),而它可能不一定使用常规 while 循环运行(真值表达式在每次迭代开始时检查,如果它从一开始就评估为 FALSE ,循环执行将立即结束)。”
因为 do while body 至少执行一次,它会回显“a”,但您的条件始终为真,并且您不会将您的值更改为 do while body;然后你会得到一个无限循环
推荐阅读
- c# - C# Charts:删除空列并显示所有列名
- python - 获取 GPS 位置 1 公里步行距离内的节点 OSMNX
- excel - 在excel中一次堆叠5列离散列
- blockchain - Blockchain explorer api 用于从各种区块链获取交易
- multiple-columns - 有没有办法在雪花中旋转列?
- r - 在 r 中使用 qmap(分位数映射)进行 CMIP 6 缩小
- java - spring-boot ConcurrencyFailureException oracle
- caching - 是否有咖啡因功能可以在定义的时间后从缓存中清除特定项目并同时重新创建它?
- javascript - 为每一页在 PDF 的侧面写下文本
- javascript - TypeError:无法读取 ClientDataManager.newChannel ClientDataManager.js:81:36 处未定义的属性“id”