PHP在简单if语句中失败

PHP在简单if语句中失败,php,Php,这是我的密码 <?php $type="gt"; if($type=="os"); { echo "1"; } if($type=="gt"); { echo "2"; } ?> 结果给了我12分。两个如果都执行!有什么想法吗 附言:我正在xampp上运行代码。请试试这个 <?php $type="gt"; if($type=="os") { echo "1"; } if($type=="gt") {

这是我的密码

<?php

$type="gt";

if($type=="os");
{
  echo "1";
}

if($type=="gt");
{
  echo "2";
}

?>  
结果给了我12分。两个如果都执行!有什么想法吗

附言:我正在xampp上运行代码。

请试试这个

<?php

  $type="gt";

  if($type=="os")
  {
       echo "1";
  }

  if($type=="gt")
  {
      echo "2";
  }

?> 

删除分号并重新运行代码。分号表示它被视为一个语句,因为PHP中的每个语句都以一个字符结尾;所以每一行都将被执行

<?php

  $type="gt";

  if($type=="os")
  {
       echo "1";
  }

  if($type=="gt")
  {
      echo "2";
  }

?> 

看到分号了吗:如果$type==gt;?你可以这样想:如果$type==gt{donothing},你可以简单地写:echo$type==gt?2 : 1;为什么OP要尝试这个?一个好的答案总是会有一个解释,说明做了什么以及为什么这样做,不仅是为了OP,而且是为了未来的访客。