php $a_bool = TRUE ; // a boolean $a_str = " foo " ; // a string $a_str2 = ' foo ' ; // a string $an_int = 12 ; // an integer echo gettype ( $a_bool ); // prints out: boolean echo gettype ( $a_str ); // prints out: string// If this is an integer, increment it by four if ( is_int ( $an_int )) { $an_int += 4 ;} // If $bool is a string, print it out// (does not print out anything) if ( is_string ( $a_bool )) { echo " String: $a_bool " ;} ?>
二、PHP的数据类型Int zjj = 100 ; // 这种赋值是对的 Int zjj = " hello,world " ; // 这种编译器就会提示错误 在PHP中,对变量的数据类型不需要声明,可以直接赋值。如下面的$zjj = 100 ; // 表示zjj为整型 $zjj = " hello,world " // 表示zjj为字符串型 PHP中的数据类型分成两种:一是标量数据类型,另一种就是复合数据类型。标量数据类型有:布尔型(boolean) 整型(integer) 浮点型(foat也叫做double) 复合数据有:数组(array) 对象( object )还有两种特殊的数据资源(resource) 空值(NULL) 1 、布尔型是最简单的变量,布尔变量:true和false值要设定一个布尔变量,只需将这两个值赋给变量就行了。PHP中就算是关键字也可以做变量名。 php $True = " 我是变量 " . True; // 这里有点的,书上有时印刷并没有。 echo($True); echo( "
" ); // 起到回车的作用 echo( " 我是关键字 " . True) ?> 执行结果:我是变量1 // 这里true就是1 我是关键字1true和false实际上是代表数值1和0,因此true在输出时显示为1,但是在给变量赋值的时候,如果赋值为1,则被当成整型,如果被赋值为true,则被当成布尔型当转换为布尔型时,以下值被认为是false ( 1 )布尔值false( 2 )整型值0(零)( 3 )浮点型值0. 0 (零)( 4 )空白字符串和字符串 " 0 " ( 5 )没有成员变量的数组( 6 )没有单元的对象(仅适用php4)( 7 )特殊类型NULL而所有其他值都被认为是TRUE包括任何资源。 2 、整型 + 2147483647到 - 2147483647 php $int_D = 2147483647 ; // 十进制赋值 echo($int_D); echo( "
" ); $int_H = 0x7FFFFFFF ; // 十六进制赋值 echo($int_H); echo( "
" ); $int_O = 017777777777 ; // 八进制赋值 echo($int_O); echo( "
" ); ?> 执行结果: 2147483647 2147483647 2147483647 如果指定一个数超出了inter的范围,将会被解释为float 3 、浮点型 1 .7E - 308到1.7E + 308 php $float_1 = 90000000000 ; echo($float_1); echo( "
" ); $float_2 = 9E10; echo($float_2); echo( "
" ); $float_3 = 9E + 10 ; echo($float_3); ?> 执行结果: 90000000000 90000000000 90000000000 4 、字符串PHP中有三种方式定义字符串 1 、单引号方式。$single_str = ' 我是人 ' ;如果想在浏览中输出单引号,必须在字符串中加入转义符号“” $single_str = ' 我被单引号括起来了!
' ; //正常输出 echo $single_str; $single_str = ' 输出单引号: '嘿嘿,我在单引号里面'
' ; //加了转义符可以输出单引号 echo $single_str; $single_str = ' 输出双引号:"我在双引号里面"
' ; //正常输出 print $single_str; $single_str = ' 输双美元符号:$ ' ; //正常输出 print $single_str; ?> 执行结果:我被单引号括起来了 ! 输出单引号: ' 嘿嘿,我在单引号里面 ' 输出双引号: " 我在双引号里面 " 输双美元符号:$( 2 )、双引号方式$Double_Str = " 我是人 " 为了在字符串中输出各种特殊字符,可以使用转义符$Double_Str = " 输出美元符号:$ " ;$Double_Str = " 输出反斜杠:\ " ; $Double_str = " 我被双引号括起来了!
" ; echo $single_str; $single_str = " 输出单引号:'嘿嘿,我在单引号里面'
" ; // 不需要转义符 echo $single_str; $single_str = " 输出双引号:"我在双引号里面"
" ; // 需要转义符 print $single_str; $single_str = " 输出美元符号:$
" ; // 需要转义符 print $single_str; $single_str = " 输出反斜杠 :\
" ; // 需要转义符 print $single_str; ?> 执行结果:输出单引号: ' 嘿嘿,我在单引号里面 ' 输出双引号: " 我在双引号里面 " 输出美元符号:$ 输出反斜杠 : ( 3 )、Heredoc 方式给字符串赋值 $zjj1_str =<<< zjj // =<<< 这个相当于链接符,获取zjj到zjj中间的数据 你好 < br > 美元符号 $ < br > //zjj1和zjj都是可以随便起名字的。 反斜杠 < br > " 我爱你 " < br > ' 我恨你 ' zjj; echo $zjj1_str; ?> 执行结果:你好美元符号 $ 反斜杠 " 我爱你 " ' 我恨你 ' ( 4 )、串中的变量 php $str_1 = " 我是变量的值! " ; $str_2 = " str_1 : $str_1
" ; // 双引号字符串中包含变量$str_1 echo $str_2; $str_1 = ' 我是变量的值 ' ; $str_2 = ' str_1 : $str_1
' ; // 单引号中包含字符串的值 echo $str_2; $str_1 = " 我是变量的值! " ; $str_2 = " str_1 : $str_12
" ; // 引用的变量名后,多了个字符2即$str_12 echo $str_2; $str_1 = " 我是变量的值! " ; $str_2 = " str_1 : ${str_1}2
" ; // 引用的变量名后,多了个字符2即$str_12 echo $str_2; ?> 执行结果:str_1 : 我是变量的值 ! str_1 : $str_1str_1 : str_1 : 我是变量的值 ! 2 从输出可以看出,双引号字符串是赋值的含义,直接输出变量的值。而单引号的字符串,包含的是变量的名称,可以理解为直接运行语句的结果,直接输出变量的名称而不是变量的值。$str_2 = " str_1 : $str_12
" ; 这句如果变量后面跟着非空格的字符,会让编译器糊涂,会把$str_12当成变量,而上面又没有定义,因此会输出空值。为了解决这个问题可以用${str_1} 2 或{$str_1} 2 这个来表达。
