PHP语言基础一.docx
- 文档编号:16317752
- 上传时间:2023-07-12
- 格式:DOCX
- 页数:17
- 大小:21.47KB
PHP语言基础一.docx
《PHP语言基础一.docx》由会员分享,可在线阅读,更多相关《PHP语言基础一.docx(17页珍藏版)》请在冰点文库上搜索。
PHP语言基础一
PHP语言基础
(一)
1.数据类型
PHP的数据类型可以分为3种,即:
标量数据类型、复合数据类型(就是多个简单的数据类型组合在一起,存储在一个变量中)和特殊数据类型。
标量数据类型
标量数据类型是数据结构中最基本单元,只能存储一个数据。
PHP中标量数据类型包括4种。
1.布尔型:
布尔型是PHP中较为常用的数据类型之一。
它保存一个True或False值。
其中True和False是PHP内部关键字。
设定一个布尔型的变量,只需将True或False赋值给变量即可。
通常布尔型变量都是应用在条件或循环语句的表达式中。
例子:
布尔型变量应用
php
//布尔型变量
$boo=true;
if($boo==true)
{
echo"我们一直在努力!
";
}
else
{
echo"错了!
";
}
//或者写成:
if($boo)
{
echo"我们一直在努力!
";
}
else
{
echo"错了!
";
}
?
>
2.字符串型(string)
字符串是连续的字符序列,由数字、字母和符号组成。
字符串的每个字符只占有一个字节。
在PHP中,定义字符串有3种方式。
●单引号(‘)
●双引号(“)
●界定符(<<<)
单引号和双引号是经常被使用的定义方式,定义格式如下:
$a=‘字符串’;或$a=“字符串”;
两者的区别是:
双引号中所包含的变量会自动被替换成实际数值,而在单引号中包含的变量则按普通字符串输出。
例子:
单引号和双引号
php
$i="你好,PHP!
";
echo"$i";
echo"
";
echo'$i';
?
>
两者之间另一处的不同点是对转义字符的使用
使用单引号时,只要对“‘”进行转义就可以了,但使用双引号时,还要注意““”、”$“等字符的使用。
这些特殊字符都要通过转义符”\“来显示。
常用的转义字符如:
\n回车
\r回车
\t水平制表符
\\反斜杠
\$美元符号
\’单引号
\”双引号
以上这些特殊字符都必须要用转义字符才能输出
也就是说:
要在一长串用单引号或双引号包含的字符串中输出这些特殊字符,必须用转义字符。
例子:
转义字符
php
//双引号中包含换行符的情况
$language="PHP";
$w1="welcometostudy$language!
\nwelcometotj!
";
//echo$w1;
/*
我们可以看到\n这个换行符没有起作用!
这是因为不同的浏览器的函数库不同会造成不同的效果
所以,对于换行符我们可以使用
来代替!
*/
$w2="welcometostudy$language!
welcometotj!
";
//echo$w2;//我们可以看到换行出现了!
//双引号中包含双引号的情况
$app="苹果";
$w3="我喜欢\"甜的\"$app";
//echo$w3;//在双引号中使用双引号,需要用到转义字符\!
//双引号中包含单引号的情况
$pear="梨";
$w4="我喜欢'{$pear}'";//由于单引号中不能解析变量,所以需要花括号!
//echo$w4;
//单引号中包含单引号的情况
$w5='我喜欢\'桃\'';
//echo$w5;
//单引号中包含双引号
$w6='我喜欢"桔子"';
echo$w6;
?
>
我们可以看到在双引号中使用单引号,以及在单引号中使用双引号都不需要转义!
只有在单引号里使用单引号,以及在双引号中使用双引号才需要转义。
定义简单的字符串时,使用单引号是更加高效的处理方式。
使用双引号时,PHP将花费一些开销处理字符的转义和变量的解析。
因此,当没有特别需求,应使用单引号。
界定符(<<<)是从PHP4.0开始支持的。
在使用时后接一个标识符,然后是字符串,最后是同样的标识符结束字符串。
格式:
$string=<< 此处为要输出的字符串 str 其中str为指定的标识符。 定界符”<<<“后面紧接着的是定界标识符。 就是上面的str。 标识符应遵循以下规则: 1.标识符由字母、数字或下划线构成。 并且不能以数字开始。 2.结尾的标识符必须顶格书写,其前不能有任何其他字符。 通常的错误是将结尾的定界标识符进行缩进。 (也就是点击了键盘上的Table键) 例子: 使用定界符定义字符串 php $str=<< 你好! PHP EOD; echo$str; //定界符中的字符串可以被解析,可以使用转义字符,但不必转义引号。 //当需要定义或输出大量的文本时,使用定界符显得尤为方便。 $str=<< 你好! "PHP" EOD; echo$str; $i="PHP"; $str=<< 你好! $i EOD; echo$str;//可以输出变量$i //下面的情况会输出: 你好! "PHP",也就是说在定界符中就可以解析变量,不需要双引号! $i="PHP"; $str=<< 你好! "$i" EOD; echo$str; ? > 3.整型(integer) 整型数据类型只能包含整数。 在32位系统中,有效的范围是-2147483648~+2147483647,如果超出了这个这个范围,整数就会溢出。 这时,系统会自动将其转化为浮点型数字。 整型数可以用十进制,八进制和十六进制来表示。 如果用八进制,数字前面必须加0,如果用十六进制,则需要加0x。 在表达式中,计算的结果均以十进制数字输出 例子: 整型变量的表示 php $str1=1234; $str2=01234; $str3=0x1234; echo"数字1234不同进制的输出结果: echo"十进制的结果是: $str1 echo"八进制的结果是: $str2 echo"十六进制的结果是: $str3 //以上结果均以十进制的形式输出 //如果想在进制间进行转换,那么可以利用PHP的一些内置函数! bindec()--二进制转换为十进制 decbin()--十进制转换为二进制 dechex()--十进制转换为十六进制 decoct()--十进制转换为八进制 hexdec()--十六进制转换为十进制 octdec()--八进制转换为十进制 base_convert()--在任意进制之间转换数字 //十六进制转换为十进制 $f1=hexdec("0x4D2"); //echo$f1;//输出1234 /** *十进制转换为十六进制 */ $f2=dechex("1234"); echo$f2;//输出4d2 /** *在任意进制之间转换数字 */ $f3=base_convert("1234",10,16);//将十进制的1234转换为十六进制 echo$f3;//输出4d2 ? > 4.浮点型(float) 浮点数据类型可以用来存储数字,也可以保存小数。 它提供的精度比整数大得多。 在32位系统中,有效范围是1.7E-308~1.7E+308。 在PHP4.0以前的版本中,浮点型的标识为double,也叫双精度浮点数,两者没有区别。 浮点型数据默认有两种书写格式,一种是标准格式。 如: 3.1415、0.333、-35.8 还有一种是科学记数法格式。 如: 3.58E1、849.72E-3 注: 浮点型的数值只是一个近似值,所以要尽量避免浮点型之间比较大小,因为最后的结果往往是不准确的。 以上的布尔型、字符串型、整型、浮点型均为标量数据类型! 复合数据类型 复合数据类型包括两种(数组和对象) 1.数组(array) 数组是一组数据的集合,它把一系列数据组织起来,形成一个可操作的整体。 数组中可以包括很多数据: 标量数据、数组、对象、资源,以及PHP中支持的其他语法结构等。 数组中的每个数据称为一个元素,元素包括索引(键名)和值两部分。 元素的索引只能由数字或字符串组成。 元素的值可以是多种数据类型。 定义数组的语法格式如下: $array=(“value1”,”value2”……);或 $array[key]=“value”;或 $array=(key1=>value1,key2=>value2……); 例子: 数组初始化 //数组的初始化 $arr=array(0=>1,1=>2,hi=>"hello"); print_r($arr); echo$arr[0];//输出数字下标的数组元素 echo" echo$arr['hi'];//输出字符串下标的数组元素 声明数组后,数组中的元素个数还可以自由更改。 只要给数组赋值,数组就会自动增加长度。 例子: 更改数组的长度 php //下面我们创建一个包含3个元素的数组$arr,然后向$arr数组中添加2个新元素,最后输出数组元素的值。 $arr=array("s1","s2","s3"); echo"\$arr[2]=$arr[2]"; echo" arr[3]="s4"; $arr[]="s5"; print_r($arr); ? > 例子: 对数组下标的分析 //构造数组 $key=8; $arr=array( 1, 'abc', 'book'=>'PHP', '33', 13=>'number', 'php'=>5.0, $key=>'key', 'hello' ); print_r($arr); /** *需要注意的问题: 根据输出的结果Array([0]=>1[1]=>abc[book]=>PHP[2]=>33[13]=>number[php]=>5[8]=>key[14]=>hello) *我们可以分析出: *1.数组的下标是从0开始的 *2.如果在数字下标后出现字符串下标,那么并不会打乱数字下标的顺序。 如: [0]=>1[1]=>abc[book]=>PHP[2]=>33字符串下标book后仍为数字下标2 *3.如果在数组某元素出现自定义的数字下标,那么会打乱之前的下标顺序,之后会以当前自定义的下标作为之后数字下标的排序依据。 如: *[2]=>33[13]=>number[php]=>5[8]=>key[14]=>hello数字下标2之后出现自定义的数字下标13,那么hello自然为14 *请注意: 14下标前的8为什么不会使hello的下标变成9呢? 这是因为8之前已经定义了大于8的下标13,所以以后只会以13为依据了,除非将8变为大于13的数字,则hello的下标才会以该数字为依据! ! ! */ 注意: 当为同名元素赋值时,只保留最后一次的定义。 所有整数字符的键被看做整数。 例子: 数组的注意 php $arr=array("s1","s2","s3"); $arr[3]="ss"; $arr[3]="xx"; print_r($arr);//只保留$arr[3]="xx"; $arr['4']="www"; print_r($arr);//$arr['4']相当于$arr[4] ? > 对象(object) 现在的编程语言用到的方法有两种: 面向过程和面向对象。 在PHP中可以自由的使用这两种方法。 我们将在后续的课程中对面向对象的技术进行详细介绍。 特殊数据类型 特殊数据类型包括两种(资源和空值) 1.资源(resource) 又叫做“句柄”,是由专门的函数来建立和使用的。 它是一种特殊的数据类型,并由程序员分配。 在使用资源时,要及时地释放不需要的资源。 如果程序员忘记了释放资源,系统自动启动垃圾回收机制,避免内存消耗殆尽。 例子: 打开文件形成的资源(随开随关) php //以只读的方式打开文件 $fileOpen=fopen("1.3.1.txt","r"); //读取文件的所有内容 $fileRead=fread($fileOpen,filesize("1.3.1.txt")); //关闭打开的文件 fclose($fileOpen); //输出文件的内容 echo$fileRead; ? > 2.空值(null) 空值,顾名思义,表示没有为该变量设置任何值,另外,空值不区分大小写,null和NULL效果是一样的。 被赋予空值的情况有以下3种。 ●还没有赋任何值; ●被赋值null ●被unset()函数处理过的变量。 例子: 空值实例 php //空值实例 echo"变量(\$string1)直接赋值为null"; $string1=null; if($string1==null) { echo"string=null"; } //以上是字符串string1被赋值为null,也会输出null echo" "; if($string2==null) { echo"string2=null"; } //以上是字符串string2未被赋值和声明,同样输出null echo" "; $string3="str"; unset($string3); if($string3==null) { echo"string3==null"; } //以上是字符串string3虽然被赋予初值,但经过unset函数处理后,仍然输出null /** *总结: 字符串string1被赋值为null,string2根本没有声明和赋值,所以也输出null, *最后的string3虽然被赋予了初值,但被unset()函数处理后,也变为null型。 *unset()函数的作用就是从内存中删除变量。 */ ? > 本节重点 PHP数据类型的种类 标量数据类型、复合数据类型(就是多个简单的数据类型组合在一起,存储在一个变量中)和特殊数据类型 每种类型所包含的变量种类有哪些? 标量数据类型是数据结构中最基本单元,只能存储一个数据。 PHP中标量数据类型包括4种。 1.布尔型 2.字符串型(string) 3.整型(integer) 4.浮点型(float) 复合数据类型包括两种(数组和对象) 1.数组(array) 2.对象(object) 特殊数据类型包括两种(资源和空值) 1.资源 2.空值 各类变量的特点? 1.布尔型: 布尔型是PHP中较为常用的数据类型之一。 它保存一个True或False值。 其中True和False是PHP内部关键字。 设定一个布尔型的变量,只需将True或False赋值给变量即可。 通常布尔型变量都是应用在条件或循环语句的表达式中。 2.字符串是连续的字符序列,由数字、字母和符号组成。 字符串的每个字符只占有一个字节。 在PHP中,定义字符串有3种方式。 ●单引号(‘) ●双引号(“) ●界定符(<<<) 3.整型数据类型只能包含整数。 4.浮点数据类型可以用来存储数字,也可以保存小数。 它提供的精度比整数大得多。 5.数组是一组数据的集合,它把一系列数据组织起来,形成一个可操作的整体。 数组中可以包括很多数据: 标量数据、数组、对象、资源,以及PHP中支持的其他语法结构等。 数组中的每个数据称为一个元素,元素包括索引(键名)和值两部分。 元素的索引只能由数字或字符串组成。 元素的值可以是多种数据类型。 6.对象(object)现在的编程语言用到的方法有两种: 面向过程和面向对象。 定义字符串有哪几种方式? 定义字符串有3种方式。 ●单引号(‘) ●双引号(“) ●界定符(<<<) 哪些特殊符号需要转义字符才能输出? ⏹\n回车 ⏹\r回车 ⏹\t水平制表符 ⏹\\反斜杠 ⏹\$美元符号 ⏹\’单引号 ⏹\”双引号 单引号和双引号的区别? 1.双引号中所包含的变量会自动被替换成实际数值,而在单引号中包含的变量则按普通字符串输出。 2.两者之间另一处的不同点是对转义字符的使用 使用单引号时,只要对“‘”进行转义就可以了,但使用双引号时,还要注意““”、”$“等字符的使用。 这些特殊字符都要通过转义符”\“来显示。 界定符(<<<)要遵循的规则? 1.标识符由字母、数字或下划线构成。 并且不能以数字开始。 2.结尾的标识符必须顶格书写,其前不能有任何其他字符。 通常的错误是将结尾的定界标识符进行缩进。 (也就是点击了 键盘上的Table键) 整型数字在表达式中以什么进制输出? 十进制 定义数组的方法有哪几种? 定义数组的语法格式如下: $array=(“value1”,”value2”……);或 $array[key]=“value”;或 $array=(key1=>value1,key2=>value2……); 特殊数据类型有哪几种? 分别介绍一下? 特殊数据类型包括两种(资源和空值) 1.资源(resource) 又叫做“句柄”,是由专门的函数来建立和使用的。 它是一种特殊的数据类型,并由程序员分配。 在使用资源时,要及时地释放不需要的资源。 如果程序员忘记了释放资源,系统自动启动垃圾回收机制,避免内存消耗殆尽。 2.空值(null) 空值,顾名思义,表示没有为该变量设置任何值,另外,空值不区分大小写,null和NULL效果是一样的。 被赋予空值的情况有以下3种。 ●还没有赋任何值; ●被赋值null ●被unset()函数处理过的变量。 WelcomeTo Download! ! ! 欢迎您的下载,资料仅供参考!
";
";
";
";
";
";
变量(\$string2)未被赋值:
被unset()函数处理过的变量(\$string3):
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- PHP 语言 基础