PHP个人总结格式
河北科技师范学院
欧美学院
PHP网站开发
个人课程总结
指导教师 张文元
所在院(系) 信息技术系
班 级 计本1005
学生姓名 郭乾成
学 号 9210100707
一、 时间和地点
日期:2013.03.28-2013.05.30
时间:每周四下午
地点:欧美学院E707(授课)、F312(上机)
二、 课程内容
这学期,我们开设了PHP网站开发这门课程,由张文元老师主讲。老师在两个月里共讲述了五章,让我们对PHP这门语言有了一个大概的了解。这五章分别为:
第一章:PHP概述
第二章:预备知识:HTML与JavaScript
第三章:PHP语言基础
第四章:PHP语言结构
第五章:PHP中的数组与数据结构
下面说说在这几章里,张老师在每一章都讲了些什么以及我领悟到了什么。
1.第一章
PHP的概念
PHP是PHP: Hypertext Preprocessor(超文本预处理器)的字母缩写,是一种跨平台的开放源代码的服务器端嵌入式脚本语言。与HTML不同的是,PHP代码是运行在服务端的,然后把结果返还到客户端来。使用 PHP 的一大好处是它对于初学者来说极其简单,可以很快的入门,只需几个小时就可以自己写一些简单的脚本,同时也给专业的程序员提供了各种高级的特性。
PHP与其它语言的比较
PHP的特点
PHP自产生以来一直都在发展中应用、在应用中发展,这是因为PHP不仅有着其它同类脚本所共有的功能,更有它自身的特色。
例如:完全免费,代码完全开放,语法结构简单,功能强大,强大的数据库支持,代码执行效率高,学习过程短,面向对象编程,可伸缩性等。
我们所使用的运行环境是Appserv,编辑工具是Notepad++。
2.第二章
HTML的概念
HTML(HyperText Markup Language)即超文本标识语言,是WWW的描述语言。HTML只是一个纯文本文件。创建一个HTML文档,只需要两个工具,一个是HTML编辑器,一个WEB浏览器。
HTML编辑器是用于生成和保存HTML文档的应用程序,如记事本、写字板。WEB浏览器是用来打开WEB网页文件,提供给我们查看WEB资源的客户端程序,如Internet Explorer,Netscape等。
HTML的标签及属性
一个HTML文档是由一系列的元素和标签组成。元素名不区分大小写,HTML用标签来规定元素的属性和它在文件中的位置。
“”括起来的句子,我们称它为标签,是用来分割和标签文本的元素,以形成文本的布局、文字的格式及五彩缤纷的画面。标签通过指定某块信息为段落或标题等来标识文档某个部件,属性是标志里的参数的选项。
HTML的特殊符号表示方法
JavaScript简介
JavaScript是一种轻型的、解释性的程序设计语言,而且具有面向对象的能力。该语言的通用核心已经潜入了Netscape、Internet Explorer和其他的Web浏览器中,它能使Web程序设计增色不少。JavaScript的客户端版本把可执行的内容添加到了网页中,这样一来,网页就不是静态的HTML了,而是包含与用户进行交互的程序、控制浏览器的程序以及动态的创建HTML内容的程序。
对JavaScript的误解
JavaScript是Java的一部分。JavaScript最常见的误解是认为它是Sun Microsystems公司的程序设计语言Java的简化版本,但是除了语句上有一些相似之处以及都能提供网页中的可执行内容之外,JavaScript和Java是完全不相干的。相似的名称不过是一种行销策略罢了(该语言最初被称为LiveScript,后来才被该为JavaScript)。
JavaScript只有客户端。这种说法是不全面的。JavaScript 分为三类:核心版、客户端JavaScript和服务器端 JavaScript,例如客户端是嵌入网页的,服务器端是嵌入Netscape网络服务器中的,当然,我们这本书只介绍客户端JavaScript,有兴趣的同学可以参考专门的JavaScript书籍。
3.第三章
PHP动态网页概述
PHP动态网页就是混合使用PHP和HTML编写的Web页面。当访问者通过客户端浏览器必出PHP页请求时时,服务端会首先对页面中的PHP代码进行处理,然后把处理后的结果连同HTML内容一起传送到客户端浏览器。
PHP动态网页的访问方式
PHP动态网页过输入“http://”开头的虚拟路径来访问。通过虚拟路径访问PHP动态网页时,首先通过Apache服务器将PHP代码转发给PHP语言引擎进行处理,然后将执行结果连同HTML代码一起发送到客户端浏览器。
PHP定界符
以””结束,中间为PHP代码。
以以结束,中间为PHP操作代码。 以””结束,中间为PHP操作代码。变量嵌入使用格式。
以“”结束,中间是PHP操作代码。变量嵌入使用。
编写PHP注释
C++风格的单行注释“//”,UNIX Shell风格的单行注释“#”,C风格的多行注释“/*„*/”。
程序的注释主要分3类,即单行注释、多行注释和程序间注释。
“//”标记仅仅注释到行末;“/* */”标记则注释整个代码块;不能嵌套使用 “/* */”标记;“#”标记则能注释单行或者程序间的某一段代码。
PHP语言支持的8种原始数据类型
4种标量类型
布尔型(boolean)、整型数(integer)、浮点数(float)、字符串(string)
两种复合类型
数组(array)、对象(object)
两种特殊类型
资源(resource)、空值(NULL)
定义变量
在PHP语言中规定,变量用一个美元符号($)后面跟变量名来表示,而且变量名是区分大小写的。变量名与其他标识符一样都遵循相同的命名规则:一个有效的变量名由字母或下划线开头,后面可以跟上任意数量的字母、数字或下划线。命名变量通常与对变量赋值一起进行。PHP变量的命名规则:
变量名长度为
PHP操作符
1)赋值操作符:=
2)算术操作符:+,-,*,/,%(取模)
3)连接操作符:. ,无论操作数是什么,都当成String,结果返回String
4)合计赋值操作符(Combined Assignment Operators):+=,*=,/=,-=,%=,.=
5)自动增减操作符(Automatically Incrementing and Decrementing):
(1)$variable+=1 ⇔$variable++;$variable-=1 ⇔$variable-,跟c语言一样,先做其他操作,后++或-
(2)++$variable,-$variable,先++或-,再做其他操作
6)比较操作符:
= =(左边等于右边),!=(左边不等于右边),= = =(左边等于右边,且数据类型相同),>=,>,
7)逻辑操作符:|| or,&& and,xor(当左右两边有且只有一个是true,返回true),!
PHP的表达式
表达式,就是由操作数、操作符以及括号等所组成的合法序列。简单地说,PHP中的常量或变量通过运算符连接后就形成了表达式,例如“$a=1”为一个表达式。表达式也有值,如上面的这个表达式的值就是1。
根据表达式中运算符类型的不同我们又可以把表达式分成:算术表达式、字符串连接表达式、赋值表达式、位运算表达式、逻辑表达式、比较表达式、其他表达式等。
最常见的表达式是比较表达式和逻辑表达式,这种表达式的值只能是真或假,在下面一节的流程控制中,会大量使用这两种表达式。
友情提示:“$a=1”为表达式,“$a=1;”则为一条语句。一定要分清楚哦!
4.第四章
分支语句:if语句、if„else语句、if „elseif „else语句、switch语句; 循环语句:while语句、do„while语句、for语句、foreach语句;
跳转语句:break语句、continue语句;
包含文件语句:include语句、include_once语句、require语句、require_once语句。
PHP的字符串处理
字符串的分割与截取
string substr(string str,int start[,int length]):从str中取出第start个字符开始length长度的子串。注意:字符串str中的字符正数从0开始,负数从-1开始。
string strtok(string str,string token):根据token中的字符将str分隔开。
array split(string pattern,string str[,int limit]):该函数返回一个字符串数组,每个单元为str经区分大小写的正则表达式pattern作为边界分割出的子串。如果设定了limit,则返回的数组最多包含limit个单元,而最后一个单元包含str中剩余的所有部分。如果出错,则split函数返回FALSE。
字符串比较
int strcmp(string str1,string str2):二进制完全比较字符串,如果str1小于str2,返回负数,否则返回正数,如果两个字符串相等则返回0。
int subcasecmp(string str1,string str2):不区分大小写比较两个字符串。 字符串的转义
string addslashes(string str):使用反斜线引用字符串,该字符串为了数据库查询语句等的需要在某些字符前加上反斜线。这些字符是单引号、双引号、反斜线与NULL字符。
string stripslashes(string str):去掉反斜线字符。
string htmlspecialchars(string str[,int quote_style[,string charset]]):将特殊字符转化成HTML格式。
string htmlentities(string str[,int quote_style[, string charset]]):将所有的字符转化成HTML格式。
string quotemeta(string str):加入引用符号。
函数的定义和调用
PHP 5中的函数有无返回值都允许。而且,在函数的名称上,PHP 对于大小写的管制比较松散。可以在定义函数时写成大写的名字,而在使用时使用小写的名字。总之,对函数而言,不用管大小写,只要注意名称没有重复就可以了。不过,PHP 5 对用户自定义函数名也是有一些要求的,具体如下:
①不能与PHP的内部函数同名
②不能与PHP的关键字重名
③不能以数字或下划线开头
④不能包含点号“.”和中文字符
函数体是实现函数功能的语句体,与for循环等不一样,函数体中即使只有一条语句,外面的大括号也不能省略。
函数的参数传递
1、值传递
作为值传递,就是将实际参数的值拷贝到形式参数中。然后由形式参数参与函数内部的计算,函数调用结束后,实际参数的值不会发生改变。用这种方式调用的函数一般都有返回值或输出值,否则函数调用实际上什么也没有做。就是使用的这种传递方式。初学者一般常使用这种传递方式。
2、引用传递
如果要实现形式参数改变时实际参数也发生相应的改变,就要使用引用传递的方式。参数的引用传递也有两种方法:①在函数定义的时候,在形式参数前面加上“&”符号,例如:
function fun(&$var1){„„} ②在函数调用的时候,在实际参数前面加上“&”符号,例如:function fun($var1){„„}
fun(&$var2)
如果形式参数$var1的值在函数中发生改变,实际参数$var2的值也会发生相应的改变。
静态变量与动态变量
静态变量与普通变量的区别,在函数fun2()中静态变量$int2只被初始化了一次,在该函数退出时$int2的值不会丢失,所以反复调用函数fun2()时,$int2的值会累加。
友情提示:静态变量虽然在函数结束时值不会丢失,但其作用域只在本函数中,在函数之外仍然无效。
时间与日期的显示和格式化输出
boolean checkdate(int month,int day,int year):验证日期的正确性。如果日期是有效的则返回true;如果日期有错,则返回false。
array getdate(int timestamp):获取时间及日期。参数timestamp为UNIX时间戳。默认为当前本地时间。
array gettimeofday(int timestamp):获取当前时间。
int mktime([int hour[,int minute[,int second[,int month[,int day[,int year[,int is_dst]]]]]]]):取得一个日期的UNIX时间戳。
int time(void):取得当前时间的UNIX时间戳。
string microtime(void):取得当前时间的UNIX时间戳和微秒数值。
string date(string format,int [timestamp])函数负责格式化服务器的时间。参数timestamp为UNIX时间戳,如果没有该参数则默认为当前时间。
5.第五章
数组的分类:一维数组、二维数组、多维数组
直接将变量声明为数组元素
一个变量声明为一个数组元素有三种方法:
第一种方法:不指定数组元素的“键”
示例程序:$characters[ ] =
第二种方法:将数组元素的“键”指定为某个整数
示例程序:$interests[2] =
第三种方法:将数组元素的“键”指定为某个字符串
示例程序:$colors[
使用array()语言结构创建数组
PHP提供了 array() 语言结构创建数组, array() 语言结构接受一定数量用逗号分隔的 key => value 参数对,这样可以一次性地为数组添加多个元素(若key省略,则key值为整数)。
创建数组的注意事项
1.如果数组元素中的“键”是一个浮点数,则“键”将被强制转换为整数(例如浮点数8.0将被强制转换为整数8);如果“键”是TRUE或FALSE,则“键”将被强制转换为整数1或0。
2.如果数组元素中的“键”是一个字符串,且该字符串完全符合整数格式时,数组元素的“键”将被强制转换为整数(例如
3.由于数组元素中的“键”唯一标识一个元素,因此数组中元素的“键”不能相等(使用= =比较)。如果两个数组元素的“键”相等,“键”对应的“值”将被覆盖。
4.不要在array() 语言结构中使用诸如“ red=>
数组元素“值”的访问
访问数组元素值的方法和访问变量值的方法相同:通过指定数组名并在方括号内指定“键名”的方式“访问”数组元素的“值”。使用这样的方法访问数组,不仅可以读取某个数组元素的“值”,还可以为数组添加数组元素以及修改数组元素的“值”,并可以像访问“变量”的方法访问数组元素的值。
PHP提供两种变量赋值方式:传值赋值和传地址赋值,对于数组同样适用。 二维数组的创建
二维数组的创建方法和一维数组的创建方法相同。
方法一:直接将变量声明为二维数组
方法二:使用array()语言结构创建二维数组
$students = array(
);
print_r($students);
?>
二维数组元素“值”的访问
二维数组中存在两个“键”,因此访问数组元素的“值”时需要指定这两个“键”。例如:$students[“2010001”][“studentName”]对应的值是“张三”,其中第一个键“2010001”用于指定二维数组$students中的某一“行”,第二个键“studentName”用于指定二维数组$students的该“行”的某一“列”。只使用第一个“键”访问数组时,访问的是二维数组中的某一“行”,该行是一个一维数组(例如$students[“2010001”]对应的值是数组)
数组处理函数及应用
这里介绍的就是各种对数组作出处理的函数,在此不一一赘述。
三、 心得体会 1.基础
基础这个东西,有人问学php需要任何基础不?
基础这个东西是个比较笼统的概念,如果你之前学习过c语言,c语言被认为是大部分语言的基础,不是说c有多好,而是c相对起手容易学,让你认为这个是编程语言,算是1个熟悉的过程,所以c语言的基础有就更好,没有也不怕。
2.怎样学习
怎样学习,大家都知道编程是1门很枯燥的事业,所以大家一定要有兴趣,
可能刚开始打算学的时候是因为别人说php有多好,php多么流行,但是后来伴随着学习的深入,你的这些兴趣可能会慢慢消亡,所以适当培养兴趣会激发自己无线的乐趣,有了乐趣,编程有啥难的。
怎么培养啊?别光说不练啊,好,比如新人入门不是自己配置环境,虽然现在都有很多的集成环境,但是真实的体验下配置环境还是会有很多帮助。怎么配置呢 ,问最好的老师百度,问啥都有答案。所以用好搜索引擎是学好的另1个关键,程序会出各样的问题,没有1个人可能会碰到所有的问题,所有就可以问百度这个大家精华的集合了。下面继续说,第1步环境配置好了,你算了进了1小步了,那么第2步呢,就是调出第1个程序。一般都是用hello world,哈哈,自己也可以写出php程序了,虽然离职业和专业的人还有很远,但是好的开始是成功的一半。这个时候该怎么做了呢。现在就是拿1本高手推荐的书,重头到尾读1遍,我说的这个读是自己看,然后把例子全部敲进去试验,完成一遍以后就会有心得了,因为你会发现为啥我的程序和书上的一模一样就是结果不正确。新手学习的时候必须承认,不容易,你会发现原来有那么多常用的语句,函数都要记。给大家的建议是,有些最常用的语句是需要记住的 比如if for while这些,其他的一般语句你只要知道有这个函数或者有这个功能就可以了,当你用的时候你可以凭借记忆搜索就可以了。
因为函数实在是太多了,慢慢的你就会知道,知道有这个函数就可以。
3.学习历程
刚开始写页面程序,调试完书中的例子。我都是一条一条独立完成的。 当然你可以把你最基本的功能放出来的时候就放出来,比如放到论坛上,让大家都参与,会有很多高手的鼓励,新手的支持,慢慢你劲头就十足,有更多的信心和兴趣去学。
如果不会怎么办,开始学最重要的就是模仿了,最开始离不开模仿,模仿的不光是模仿,模仿的同时在加改进,就成了自己的作品了。
其实没啥难的,多练习,练习写程序,真正的实践比看100遍都有用。不过要熟悉知识要点,其实php也分很多的区域,关键在于交流。
4.总结
基础有没有对学习php没有太大区别,关键是兴趣。兴趣是最好的老师,百度是最好的词典。
实践是检验自己会不会的真理。
爱上php,他也会爱上你。
我觉得,php给我带来快乐的同时,我也会给他带来快乐。
做为1门年轻的语言,php一直很努力。