Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/230.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jsf-2/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP和Javascript的比较有什么不同?_Javascript_Php_Jquery - Fatal编程技术网

PHP和Javascript的比较有什么不同?

PHP和Javascript的比较有什么不同?,javascript,php,jquery,Javascript,Php,Jquery,下面的PHPcode输出Yes if("2"== true){ echo "yes"; } else{ echo "no"; } ?> 但是下面的Javascriptcode警报No if("2"== true){ echo "yes"; } else{ echo "no"; } ?> <script> if("2" == true){ alert('yes'); } else{

下面的
PHP
code输出Yes
if("2"== true){
    echo "yes";
}
else{
echo "no";
}
?>
但是下面的
Javascript
code警报No

if("2"== true){
    echo "yes";
}
else{
echo "no";
}
?>
 <script>
    if("2" == true){
            alert('yes');
        }
        else{
            alert('no');

        }
   </script>

如果(“2”==真){
警惕(“是”);
}
否则{
警告(“否”);
}

我不知道这些语句在其他语言中如何执行。为什么输出不同?

在PHP中,您需要使用
==
检查数据类型

if ("2" === true) {

}
查看PHP将字符串强制转换为bool时发生的情况:

php > var_dump ((bool) "1234");
bool(true)
php > var_dump ((bool) "");
bool(false)
请参见PHP中的“==”仅检查值是否已设置,然后自动为真


在JS中,将进行类型转换以检查值。True将转换为“1”,而“1”不等于“2”。

始终使用===而不是==。当使用==javascript和php时,它们会尝试进行类型转换,有时会猜错类型。因为不同的语言是不同的,并且对等式的含义做出不同的决定。
if(“2”){//这将被执行!!!!
@downvorters:问题出了什么问题?