PHP如果大于

Sau*_*les -1 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>
Run Code Online (Sandbox Code Playgroud)

Nic*_*ick 6

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

if ((int)$mqmtxt >= 20) {
Run Code Online (Sandbox Code Playgroud)

  • @emix*总是*?!由于您也可以使用大于运算符来比较字符串,因此不可能. (2认同)