PHP 不尋常型別的輸出和相加減效果

2021-08-09 13:32:11 字數 4004 閱讀 9829

效果(效果下面是**):

數字與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"=>1,"1"=>2]+["1"=>3] 結果:array(2)

[1,2]+[3,4,5] 結果:array(3)

注:捨棄了下標一致的資料,另外相減 ([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

**如下:

<?php

echo "數字與null";

echo "1+null=".(1+null)."\t|\t"; //1

echo "null+1=".(null+1).""; //1

echo "null+0=".(null+0).""; //0

echo "null+null=".(null+null)."\t|\t"; //0

echo "null=".(null).""; //空

echo "數字與bool";

echo "1+false=".(1+false)."\t|\t"; //1

echo "false+1=".(false+1).""; //1

echo "1+true=".(1+true)."\t|\t"; //2

echo "1-true=".(1-true)."\t|\t"; //0

echo "true+1=".(true+1)."\t|\t"; //1

echo "true-2=".(true-2).""; //-1

echo "true=".(true)."\t|\t"; //1

echo "false=".(false)."\t|\t"; //空

echo "false+null=".(false+null)."\t|\t"; //0

echo "'1字串'+null=".('1字串'+null)."\t|\t"; //0

echo "null+'1字串'=".(null+'1字串')."\t|\t"; //0

echo "null+'字串'=".(null+'字串')."\t|\t"; //0

echo "'字串'+null=".('字串'+null)."\t|\t"; //0

echo "true+true+true+null=".(true+true+true+null)."\t|\t"; //3

echo "false+false+true=".(false+false+true).""; //1

echo "注:以上強轉的一律為 int 型。

";echo "陣列與陣列";

echo "[1,2]+[3] 結果:";

var_dump([1,2]+[3]); //[1, 2]

echo "";

echo '["0"=>1,"1"=>2]+["1"=>3] 結果:';

var_dump(["0"=>1,"1"=>2]+["1"=>3]); //["0"=>1,"1"=>2]

echo "";

echo "[1,2]+[3,4,5] 結果:";

var_dump([1,2]+[3,4,5]); //[1, 2, 5]

echo "";

echo "注:捨棄了下標一致的資料,另外相減 ([1] - [2,3]) 會報錯,陣列與數字/null/bool相加報錯。

";echo "count()的統計";

echo "count(11):".count(11)."\t|\t"; //1

echo "count(1):".count(1)."\t|\t"; //1

echo "count(0):".count(0)."\t|\t"; //1

echo "count(false):".count(false)."\t|\t"; //1

echo "count(true):".count(true)."\t|\t"; //1

echo "count(''):".count("")."\t|\t"; //1

echo "count('字串'):".count("字串")."\t|\t"; //1

echo "count(null):".count(null).""; //0

echo "陣列與字串";

echo "陣列轉字串";

$str = "abc";

echo "\$str='abc';=>\$str['xyz']=['strstr'];=>var_dump(\$str)";

$str['xyz'] = ['strstr'];

var_dump($str);

echo "注:陣列會自動轉為字串,如$str原本就是字串,

因為陣列轉為字串會輸出array,而下標0位置只有乙個位元組,所以取a,結果為abc。

";echo "echo符串 echo ['a']為:";

echo ['a'];

echo "";

本文持續更新~~~~~~~~~~~~~~

PHP的輸出 echo 和 print 語句

echo 可以輸出乙個或多個字串 print 只允許輸出乙個字串,返回值總為 1。echo 輸出的速度比 print 快,echo 沒有返回值,print有返回值1。echo 和 print 都是乙個語言結構,可以使用括號,也可以不使用括號。1.使用 echo 命令輸出字串 字串可以包含 html ...

php中的型別和變數

php規定變數名稱的前面必須加上美元符號 而且不管是變數還是常量,識別符號都是區別大小寫的,這有別於php關鍵字。php的變數名不能用數字開頭,通常以大小寫字母或下劃線開頭,不過也可以使用其它字元,比如漢字。php中除了自定義的變數外,還有大量的預定義變數,比如 server env cookie ...

php中如何輸出時間 PHP的日期和時間

標籤 unix時間戳 從 unix 紀元 格林威治時間 1970 年 1 月1日 00 00 00 到當前時間的秒數 time 函式返回乙個當前系統的時間戳 mktime 取得乙個日期的 unix 時間戳 1 格式 int mktime 時 分 秒 月 日 年 is dst區 2 注意 is dst...