PHP复习题.ppt_第1页
PHP复习题.ppt_第2页
PHP复习题.ppt_第3页
PHP复习题.ppt_第4页
PHP复习题.ppt_第5页
已阅读5页,还剩25页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、,PHP期末总复习,1,题型,一.单项选择题(每题2分,共40分) 二.问答与编程(5题,共60分),自定义变量,与预定义变量不同,自定义变量是需要定义才能使用的变量。PHP中定义变量与其他编程语言有很大的不同。PHP中定义一个变量时使用如下格式: $var; 即一个美元符号“$”加变量名。其中变量名的命名规则与与其他标签遵循一样的规则即:以字母或下划线开始,后面跟着任何字母,数字或下划线。在使用变量时要注意:与常量不同,变量是大小写不敏感的,即内容相同大小写不同的变量是同一变量。例如:定义了$TEMP,则完全可以使用$temp来调用。但是为了使程序更加清晰不推荐这样使用,原则上使用变量时应该

2、与其定义的变量名保持一致。,变量的类型,PHP的变量类型与前面所介绍的数据类型基本一致。PHP有以下几种类型:整型变量(integer)、浮点型变量(double)、字符型变量(string)、布尔型变量(bool)、数组变量(array)和对象型变量(object)。,问题,下面哪些变量合法?,$principal,$cost_price,$marks_3,$lastname,$city,$123rate,$discount%,$zip code,$City,$int,数组型变量的使用,数组可以看作是一组变量的集合,它是一种比较特殊的变量。与其他变量(integer、double、strin

3、g、bool)类型相比较,最大的特点是可以存储多个值,而标量只能存储一个值。所以说数组是一组变量的集合,其元素类型可以是数值型、字符型、甚至是数组。,数组,数组的概念: 数组是一种复合数据类型,可用于保存一组类型相同或不相同的数据, 并把一组值映射为键。键也称为数组的索引,它可以是整型数或字符串, 相应的数组分别称为枚举数组或关联数组。键可以有一个或多个,相应的 数组分别称为一组数组或多维数组。 3.1.1 创建数组 1. 用array()创建数组 $array_name = array( key = value , . . . ) ; 其中参数key表示键名,可以是整型数或字符串;value

4、表示与键对应的 值,可以是任何类型的值(包括数组)。array()语言结构返回根据参数建 立的数组。 2. 用方括号语法新建或修改数组 $arr_namekey = value ; 也可以省略键名: $arr_name = value ; 其中key可以是整型数或字符串;value可以是任何值。,创建多维数组,前面几节介绍的数组都是一维的,这一小节来介绍一下多维数组。数组可以是一维的也可以是多维的。“维数”或“秩”对应于用来识别每个数组元素的下标个数。维数可以多达32维,但一般三维以上就很少见了。 多维数组的定义方法与一维数组类似。也可以采用给一维数组定义的两种方法来创建。下面就通过一个实例来

5、说明如何创建多维数组。,$arr2=array( 水果=array( 苹果, 梨 ), 蔬菜=array( 黄瓜, 土豆, 西红柿 ) );/同时给数组所有元素赋值,位运算符,位运算符是对整型数中指定的位进行置位操作的一类运算符。如果左右参数都是字符串,则位运算符将操作字符的ASCII码值。PHP中的位运算符如表所示。,为类初始化一个对象,类在创建完成之后,就需要为类初始化对象。如果创建之后而不为类初始化对象就好比手上只有一份汽车的介绍广告,而没有汽车。所以要想操作类的属性方法,就需要对象。本节来介绍如何为类初始化一个对象并操作类的属性与方法。在PHP中创建类之后,为类初始化对象要使用如下语法

6、格式: class classname var $var function functionname() /以上为定义类的代码 $myobj=new classname;/初始化对象 $myobj-var=value;/调用类的属性 $myobj-functionname();/调用类的方法,类的继承,类的继承是指一个类(如类A)可以使用另一个类(如类B)中所有属性与方法。这样就是类B对类A的继承,类B就可以叫做是类A的子类,反过来类A也可以叫做类B的父类。子类最多可以继续一个父类,在PHP中要实现类的继承,需要使用以下语法样式: class A class B extends A 要实现继承

7、最为关键的一步就是在定义子类(即以上代码中的类B)时,在类名后使用extends关键字再加上父类名称(即以上代码中的类A)即可。这样在类B中就可以使用类A中所定义的所有属性与方法,同时在类B中还可以定义自身特有的属性与方法。,类的构造函数,如果类中定义的方法名即函数名与类的名称相同,则为类初始化对象时与类名相同的函数将会被直接执行。如果类没有构造函数,而类的父类有构造函数则会尝试执行父类的构造函数。与类的名称相同的函数就叫做类的构造函数。通过这些介绍大致可以得出类的构造函数的两大特征: 函数名称与类名称完全相同; 为类初始化时函数将会被无条件执行。 在PHP5中,类的构造函数名是:_const

8、ruct,正则表达式应用,正则表达式概述 正则表达式是从左向右去匹配目标字符串的一组模式,它由两种基本的字符类型组成:普通字符和元字符。普通字符也称为原义字符,这些字符在模式中表示它们自身并匹配目标中相应的字符。如果使用一个不包含任何元字符的正则表达式,则只能执行纯文本搜索。正是元字符才使正则表达式具有强大的字符串处理能力。 表达式应被包含在定界符中,通常使用正斜线(/)作为定界符。任何不是字母、数字或反斜线()的字符都可以作为定界符。如果作为定界符的字符必须被用在表达式本身中,则需要用反斜线转义。POSIX扩展正则表达式则不需要定界符。,正则表达式应用,编写正则表达式 反斜线():这是一个通

9、用转义符 音调符号()有以下两种使用方法: 若用在方括号之外,则表示匹配目标字符串的开头。 若用在方括号之内,则表示不接受该字符集合。 美元符号($)。表示匹配目标字符串的结尾。 句点(.)。在默认情况下,匹配除了换行符(n)以外的任意一个字符。 竖线(|)表示多中选一。 圆括号(())用于定义一个子模式。red以及king,并被计为1、2和3。 花括号()。用于定义一个数量限定符。 问号(?)表示匹配前面的子模式0次或1次,等价于0,1。 星号(*)表示匹配前面的子模式0次或多次,等价于“0,”。 加号(+)表示匹配1个或多个数量限定符,等价于1,。 方括号()。用于定义一个字符类。 连字符

10、(-)用在字符类中,指出字符的范围。,正则表达式的构成,正则表达式的构成 模式是正则表达式最基本的元素 模式是一组描述字符串特征的字符,模式可以很简单,由普通字符串组成,也可以很复杂,包含很多特殊字符. 特殊字符 happy 是由特殊字符与字符串happy组成的模式,表示只匹配以happy开头的字符串.并且区分大小写. 特殊字符$ happy$ 是由特殊字符$与字符串happy组成的模式,表示只匹配以happy结尾的字符串,区分大小写,15,正则表达式的构成,特殊字符 表示范围,可以把需要的字符放在 中表示一个字符 a-z 要求以小写字母开头 A-Z$ 要求以大写字母结尾 0-9 要求以数字开

11、始,16,正则表达式的构成,:alpha: 匹配包含字母与数字的字符 :digit: 匹配任意数字 :space: 匹配任意空白 0-9-. 匹配数字,减号,句号 0-9 符号在 内表示非(排除) 表示第一个字符不能是数字,17,正则表达式的构成,限定符描述 英文点号 限定符之前的表达式可被查找到1 次 ? 限定符之前的表达式可被查找到 0 次或 1 次 + 限定符之前的表达式可被查找到 1 次或多次 * 限定符之前的表达式可被查找到任意次(含 0 次),18,正则表达式的构成,匹配一个单词或一组数字 n 限定符之前的表达式仅可被查找到 n 次 an, 代表a连续出现了至少n次 n,m 限定符

12、之前的表达式可被查找到 n 次到 m 次之间,19,打开文件,在使用文件时,有时打开文件是必须的,只有打开了文件句柄,才能对文件进行诸如:读取、写入一类的操作。在PHP中使用函数:fopen()来打开文件。该函数的使用格式如以下代码所示。 resource fopen(string filename,string mode,bool use_include_path,resource zcontext) 参数filename为需要打开文件的文件名的字符型变量。 r 只读方式打开,将文件指针指向文件头。 r+ 读写方式打开,将文件指针指向文件头。 w 写入方式打开,将文件指针指向文件头并将文件大

13、小截为零。如果文件不存在则尝试创建之。 w+ 读写方式打开,将文件指针指向文件头并将文件大小截为零。如果文件不存在则尝试创建之。 a 写入方式打开,将文件指针指向文件末尾。如果文件不存在则尝试创建之。 a+ 读写方式打开,将文件指针指向文件末尾。如果文件不存在则尝试创建之。,按字符读取文件,文件打开之后,就可以对文件进行读取、写入的操作了。其中,按字符读取文件内容是最重要的读取文件内容的方式之一。在PHP中,可以通过函数fgetc()实现按字符读取文件内容。该函数的使用格式如下所示。 string fgetc(resource handle) 该函数将以字符的形式返回文件指针处所指代的字符。参

14、数handle为由函数fopen(或者其他文件打开函数,如popen()、fsockopen())打开的可操作的文件句柄资源。如果文件指针已经指向文件尾部即EOF,则函数将会返回False。 在使用此函数时需要注意,由于该函数只能获取文件指针处指向的一个字符。所以要想获取文件的全部内容,需要通过循环对文件进行遍历。这样才能使用此函数获取文件的全部内容。,按行读取文件,虽然按字符读取文件内容可以精确读取每个字符的内容,但此方法有着相当的局限性,其效率相对较低。按行读取文件就可以有效提高文件读取的效率。与按字符读取不同,按行读取内容,以文件中的每一行为单位读取文件内容。在PHP中通过函数fgets

15、()来实现按行读取文件内容。该函数使用格式如下: string fgets(int handle,int length) 该函数将按行读取文件内容。参数handle为指定的由函数fopen()打开的文件句柄,可选参数length为指定每行最多的读取字节数。 函数从handle指向的文件中读取一行并返回长度最多为length-1字节的字符串。遇到换行符(包括在返回值中)、EOF或者已经读取了length-1字节后,停止读取。如果没有指定length,则默认为1KB,即1024字节。如果读取中出现错语,函数将返回False。,读取文件所有内容,前两节介绍的文件内容获取方法都存在一定的局限性。不管是

16、按字节读取文件内容,还是按行读取文件内容,都需要事先使用fopen()函数打开文件句柄,相对比较麻烦。而PHP中还提供一种方法可以不打开文件,直接将文件所有内容读取到一个数组变量中。这就是使用file()函数。该函数使用格式如以下代码所示。 array file(string filename,int use_include_path,resource context) file()函数把整个文件读入一个数组中,数组中的每个单元都是文件中相应的一行,包括换行符在内。如果读取失败函数将返回False。参数filename为指定需要读取内容的文件名。可选参数use_include_path如果被设

17、为1,函数将从use_include_path中寻找文件;可选参数context为指定的数据流上下文。,什么是Session,在计算机专业术语中,Session是指一个终端用户与交互系统进行通信的时间间隔,通常指从注册进入系统到注销退出系统之间所经过的时间。 1Session的作用 具体到Web中的Session指的就是用户在浏览某个网站时,从进入网站到浏览器关闭所经过的这段时间,也就是用户浏览这个网站所花费的时间。因此从上述的定义中可以看到,从其实质上来说,Session实际是一个特定的时间概念。 2Session解决方案 那什么是Session的解决方案呢?我们知道,用户访问一个网站时往往

18、需要浏览许多网页。对于一个通过PHP构筑的网站来说,用户在访问的过程中需要执行许多PHP脚本。然而由于HTTP协议自身的特点,用户每执行一个PHP脚本都需要和Web服务器重新建立连接。,如何使用Session,在PHP中要使用Session可以分为:启动Session、注册Session、调用Session以及关闭Session这几步,本节将分别向读者作介绍。 1启动Session 在使用Session前,首先需要使用函数session_start()来启动该Session。该函数的使用格式如下。 bool session_start() 2注册Session Session在启动之后,就可以

19、通过函数session_register()来注册Session变量。该函数的语法格式如以下代码所示。 bool session_register(mixed name, mixed . ) 3调用Session 如果php的配置没有开启register_globals(自动全局变量开关),则只可以用_SESSION数组来引用Session变量。例如,var只能这样引用$_SESSIONvar,而如果开启了register_globals选项,则可以直接用$var。 4关闭Session 如果Session不再需要使用时,可以通过函数session_destroy()来关闭一个Session。

20、此时该Session必须是已经开启的。该函数的使用格式如以下代码所示。 bool session_start(),表单form,本小节为读者介绍HTML中的表单form。表单是网站与客户之间进行互动的最有效的方式。用户可以通过表单,将内容上交给服务器。而服务器则在后台获取用户提交内容,并进行相关处理。如果没有表单,HTML的互动就成了一句空谈。,表单的属性,表单标记form最常用的属性有三个 name属性:指定表单的名称,它的值为字符串; method属性:指定表单数据提交到服务器的方式,它的可用值通常有:post与get两种。关于这两种提交方式的区别,到后面章节讲到互动程序时将详细说明。 action属性:该属性指定用于处理表单提交数据的后台程序,即表单要提交到的目标程序。通常指向动态脚本语言创建的页面,如:PHP、ASP、JSP等等。通过这些动态页面来获取表单数据。,表单元素的组成,表单(form)由表单元素构成。常见的表单元素有以下几种:文本框(text)、密码输入框(password)、普通按钮(button)、单选按钮(radio)、复选框(checkbox)、列表框(select)、文本域(textarea)、提交按钮(submit)、重置按钮(reset)、隐藏域(hidden)等

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论