PHP 不寻常类型的输出和相加减效果

来源:互联网 发布:深度linux安装失败 编辑:程序博客网 时间:2024/06/05 07:02
效果(效果下面是代码):

数字与null

1+null=1 | null+1=1

null+0=0

null+null=0 | null=

数字与bool

1+false=1 | false+1=1

1+true=2 | 1-true=0 | true+1=2 | true-2=-1

true=1 | false= | false+null=0 | '1字符串'+null=1 | null+'1字符串'=1 | null+'字符串'=0 | '字符串'+null=0 | true+true+true+null=3 | false+false+true=1

注:以上强转的一律为 int 型。

数组与数组

[1,2]+[3] 结果:array(2) { [0]=> int(1) [1]=> int(2) }

["0"=>1,"1"=>2]+["1"=>3] 结果:array(2) { [0]=> int(1) [1]=> int(2) }

[1,2]+[3,4,5] 结果:array(3) { [0]=> int(1) [1]=> int(2) [2]=> int(5) }

注:舍弃了下标一致的数据,另外相减 ([1] - [2,3]) 会报错,数组与数字/null/bool相加报错。

count()的统计

count(11):1 | count(1):1 | count(0):1 | count(false):1 | count(true):1 | count(''):1 | count('字符串'):1 | count(null):0

数组与字符串

数组字符串
$str='abc';=>$str['xyz']=['strstr'];=>var_dump($str)
Warning: Illegal string offset 'xyz' in C:\Users\��ɽ\Desktop\�½��ļ���\null.php on line 54

Notice: Array to string conversion in C:\Users\��ɽ\Desktop\�½��ļ���\null.php on line 54
string(3) "Abc" 
Notice: Undefined variable: str原本就是字符串, in C:\Users\��ɽ\Desktop\�½��ļ���\null.php on line 57
注:数组会自动转为字符串,如 因为数组转为字符串会输出Array,而下标0位置只有一个字节,所以取A,结果为Abc。
echo符串 echo ['a']为:
Notice: Array to string conversion in C:\Users\��ɽ\Desktop\�½��ļ���\null.php on line 60
Array








代码如下:
<?phpecho "<h4>数字与null</h4>";echo "1+null=".(1+null)."\t|\t";      //1echo "null+1=".(null+1)."<hr>";    //1echo "null+0=".(null+0)."<hr>";   //0echo "null+null=".(null+null)."\t|\t";  //0echo "null=".(null)."<hr>";     //空echo "<h4>数字与bool</h4>";echo "1+false=".(1+false)."\t|\t";    //1echo "false+1=".(false+1)."<hr>";    //1echo "1+true=".(1+true)."\t|\t";     //2echo "1-true=".(1-true)."\t|\t";       //0echo "true+1=".(true+1)."\t|\t";     //1echo "true-2=".(true-2)."<hr>";      //-1echo "true=".(true)."\t|\t";       //1echo "false=".(false)."\t|\t";    //空echo "false+null=".(false+null)."\t|\t";    //0echo "'1字符串'+null=".('1字符串'+null)."\t|\t";    //0echo "null+'1字符串'=".(null+'1字符串')."\t|\t";    //0echo "null+'字符串'=".(null+'字符串')."\t|\t";    //0echo "'字符串'+null=".('字符串'+null)."\t|\t";    //0echo "true+true+true+null=".(true+true+true+null)."\t|\t";  //3echo "false+false+true=".(false+false+true)."<hr>";  //1echo "<div style='color:red;font-weight:bold'>注:以上强转的一律为 int 型。</div>";echo "<h4>数组与数组</h4>";echo "[1,2]+[3] 结果:";var_dump([1,2]+[3]);    //[1, 2]echo "<hr>";echo '["0"=>1,"1"=>2]+["1"=>3] 结果:';var_dump(["0"=>1,"1"=>2]+["1"=>3]);    //["0"=>1,"1"=>2]    echo "<hr>";echo "[1,2]+[3,4,5] 结果:";var_dump([1,2]+[3,4,5]);    //[1, 2, 5]echo "<hr>";echo "<div style='color:red;font-weight:bold'>注:舍弃了下标一致的数据,另外相减 ([1] - [2,3]) 会报错,数组与数字/null/bool相加报错。</div>";echo "<h4>count()的统计</h4>";echo "count(11):".count(11)."\t|\t";    //1echo "count(1):".count(1)."\t|\t";    //1echo "count(0):".count(0)."\t|\t";    //1echo "count(false):".count(false)."\t|\t";    //1echo "count(true):".count(true)."\t|\t";    //1echo "count(''):".count("")."\t|\t";    //1echo "count('字符串'):".count("字符串")."\t|\t";    //1echo "count(null):".count(null)."<hr>";    //0echo "<h4>数组与字符串</h4>";echo "<h5>数组<span style='color:red'>转</span>字符串</h5>";$str = "abc";echo "\$str='abc';=>\$str['xyz']=['strstr'];=>var_dump(\$str)";$str['xyz'] = ['strstr'];var_dump($str);echo "<div style='color:red;font-weight:bold'>注:数组会自动转为字符串,如$str原本就是字符串,因为数组转为字符串会输出Array,而下标0位置只有一个字节,所以取A,结果为Abc。</div>";echo "echo符串 echo ['a']为:";echo ['a'];echo "<hr><hr><hr><hr><hr><hr><hr><hr><hr><hr>";



本文持续更新~~~~~~~~~~~~~~

原创粉丝点击