PHP错误代码示例0x1

时间:2013-12-14 08:10:30

标签: php

我有一个脚本,通过$ ErrorCode = 0x1或0x2或0x4或0x8 ...

这段代码正在给我正确的状态msg:

<div class="left_content">Submit:</div>
<div class="right_content">
    <?php echo ($errorCode & 0x1) != 0x1 
            ? "<span class='green'>Ok</span>" 
            : "<span class='red'>Fail</span>"; ?>
</div>

但是我尝试用这个来改变代码,但这段代码的状态msg一直都是“Ok”即使失败

if(($errorCode & 0x1) != 0x1 ) 
{ 
    $Error_0x1 = "<span class='green'>Ok</span>";  
} else 
{ 
    $Error_0x1 = "<span class='red'>Fail</span>"; 
}

我做错了什么?

2 个答案:

答案 0 :(得分:1)

查看您的代码,我想念的只是实际的echo $Error_0x1;和周围的HTML代码。

所以这应该是你的整个代码:

<?php
    if(($errorCode & 0x1) != 0x1 )
    {
        $Error_0x1 = "<span class='green'>Ok</span>";
    } else
    {
        $Error_0x1 = "<span class='red'>Fail</span>";
    }
?>
<div class="left_content">Submit:</div>
<div class="right_content">
    <?php echo $Error_0x1; ?>
</div>

顺便说一下...... 0x1只是意味着1是二进制格式。

$ errorCode&amp; 0x1实际上是看$ errorCode的哪些位与0x1(二进制1)的位重叠。在这种情况下,如果是奇数,则返回1,如果是偶数,则返回0。

163: 10100011
0x1: 00000001 &
---------------
     00000001

因此,如果$ errorCode为163,您的代码现在会显示if( (1) != 1)。所以它应该读取失败。如果没有,请查看您是否将重写的代码放在错误的位置,或者变量尚未设置或者某些内容......

答案 1 :(得分:-1)

if(($errorCode != '0x1' ) 
{ 
    $Error_0x1 = "<span class='green'>Ok</span>";  
} else 
{ 
    $Error_0x1 = "<span class='red'>Fail</span>"; 
}

这应该可以解决问题。 如果它不起作用,请尝试将'0x1'替换为0x1