首页 > 解决方案 > PHP 如果大于

问题描述

如果 的数值$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>

标签: php

解决方案


您正在将字符串"7"与字符串进行比较"20",因为'7' > '2'您的 if 测试通过并WARN显示。您需要将两个值都转换为整数才能正确比较,例如

if ((int)$mqmtxt >= 20) {

推荐阅读