首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > PHP >

int门类

2013-10-14 
int类型??$x1array(1111,222111,33333)$y1in_array(111,$x1)echo $y1echo \r\n$x2array(1

int类型?


<?

     $x1=array(1=>111,2=>22111,3=>3333);
     $y1=in_array(111,$x1);
     echo $y1;
     echo "\r\n";
     
     $x2=array(1=>111,2=>2211,3=>3333);
     $y2=in_array('111',$x2);
     echo $y2;
     echo "\r\n";
     
     $x3=array(1=>111,2=>2211,3=>3333);
     $y3=in_array("111",$x3);
     echo $y3;
     echo "\r\n";
    
?>


问题:
上面PHP程序,函数第1个参数是:int类型,它可以用以下3种方式表示:
1)111
2)'111'
3)"111"

这样都对,为什么?
[解决办法]
引用:
Quote: 引用:

因为你没有给in_array指定第三个参数,因此只比较值是否相等。而 111 ,'111' ,"111" 三个的值是相等的。


先不用考虑第3个参数。
PHP语法,int类型,可以用这三种方式表示?
php 是弱类型语言,会根据上下文自动变换数据类型

echo '111' + 2; //输出 113
echo 111 . 2; //输出 1112

对于 #8,当取消强制类型检查时
error_reporting(E_ALL ^ E_NOTICE);
$x1=array(1=>"a",2=>"b",3=>"c");
$y1=in_array(a,$x1);
并不会报错!

热点排行