【发布时间】:2019-02-25 11:23:05
【问题描述】:
如果$mqmtxt 的数值大于20,我将尝试回显特定消息。
值在 txt 文件中,值为 7,因此应该显示 NO WARN,但显示的是 WARN。不确定我在这里缺少什么。
<?php
$mqmtxt = file_get_contents("./MQM/mqmcount.txt");
$mqmtxt = preg_replace('/[\x00-\x1F\x7F-\xFF]/', '', $mqmtxt);
if ($mqmtxt >= "20"){
$mqmwarning = "WARN";
}else{
$mqmwarning = "NO WARN";
}
?>
<!DOCTYPE html>
<html>
<body>
<div id="dispmqmcount"><?php echo $mqmtxt; ?></div>
<div id="warning"><?php echo $mqmwarning; ?></div>
</body>
</html>
【问题讨论】:
-
什么是
var_dump($mqmtxt);? -
将此行 if ($mqmtxt >= "20"){ 更改为 if ($mqmtxt >= intval("20")){
-
您正在进行字符串比较,而不是 int 比较。试试casting
-
对 $mqmtxt 进行类型转换。如果 ( (int)$mqmtxt >= 20) {....)
-
下面的答案(和评论)都解决了这个问题,如问题中所述,转储为 7。谢谢大家
标签: php