
HP5开发教程PHP基本语法课件.ppt
24页php是什么?是什么?PHP 是什么?是什么?PHP(“PHP: Hypertext Preprocessor”,超文本预处理器的字母缩写)是一种被广泛应用的开放源代码的多用途脚本语言,它可嵌入到 HTML中,尤其适合 WEB 开发 以上是一个简单的回答,不过这是什么意思呢?请看如下例子: 例子例子 1-1. 一个介绍性的范例一个介绍性的范例
一般地,apache对*.htm或者 *.html文件,不作php解释,所以将原样输出所以,在普通的.htm、.html页面中,不能写php代码Code:code a/hello.phpHP5开发教程PHP基本语法课件php的注释的注释PHP 支持支持 ‘C’,,‘C++’ 和和 Unix Shell 风格的注释风格的注释// 单行注释/* */ 多行注释# Unix风格注释/** 类的注释方法dfdfdf*/[应该养成注释的习惯,这样能提高代码的可读性,缩短后期维护的时间]例如例如: HP5开发教程PHP基本语法课件变量变量@自定义变量自定义变量基础基础PHP 中一个美元符号后面跟上一个变量名称,即表示一个变量。
变量的名称是对大小写敏感的 变量名与 PHP 中其它的标签一样遵循相同的规则一个有效的变量名由字母或者下划线开头,后面跟上任意数量的字母,数字,或者下划线Code:1/liang.php1/php_htm.phpHP5开发教程PHP基本语法课件变量变量@预定义变量预定义变量PHP 超全局变量超全局变量$GLOBALS 包含一个引用指向每个当前脚本的全局范围内有效的变量该数组的键标为全局变量的 名称从 PHP 3 开始存在 $GLOBALS 数组 $_SERVER 变量由 Web 服务器设定或者直接与当前脚本的执行环境相关联。
类似于旧数组 $HTTP_SERVER_VARS 数组(依然有效,但反对使用) $_GET 经由 HTTP GET 方法提交至脚本的变量类似于旧数组 $HTTP_GET_VARS 数组(依然有效,但反对使用) $_POST 经由 HTTP POST 方法提交至脚本的变量类似于旧数组 $HTTP_POST_VARS 数组(依然有效,但反对使用) $_COOKIE 经由 HTTP Cookies 方法提交至脚本的变量类似于旧数组 $HTTP_COOKIE_VARS 数组(依然有效,但反对使用) $_FILES 经由 HTTP POST 文件上传而提交至脚本的变量类似于旧数组 $HTTP_POST_FILES 数组(依然有效,但反对使用)详细信息请参阅 POST 方法上传 $_ENV 执行环境提交至脚本的变量类似于旧数组 $HTTP_ENV_VARS 数组(依然有效,但反对使用) $_REQUEST 经由 GET,POST 和 COOKIE 机制提交至脚本的变量,因此该数组并不值得信任HP5开发教程PHP基本语法课件变量变量@预定义变量预定义变量PHP 服务器变量服务器变量REQUEST_METHOD获得对应页面方法。
如:get、postQUERY_STRING获取对应页面的请求字符串DOCUMENT_ROOT获得根目录用法:用法:$_SERVER['QUERY_STRING']HP5开发教程PHP基本语法课件变量变量@作用范围作用范围在方法内,欲使用全局变量,需用global来声明:结果为:3 结果为:200;HP5开发教程PHP基本语法课件变量变量@$GLOBALS及类型判断及类型判断使用使用 $GLOBALS 替代替代 globalis_array(),is_float(),is_int(),is_object() 和 is_string()来判断变量的类型,是相应类型,返回true,否则返回false。
HP5开发教程PHP基本语法课件常量常量@自定义常量自定义常量常量是一个简单值的标识符(名字)如同其名称所暗示的,在脚本执行期间该值不能改变(除了所谓的魔术常量,它们其实不是常量)常量默认为大小写敏感按照惯例常量标识符总是大写的 语法语法可以用 define() 函数来定义常量一个常量一旦被定义,就不能再改变或者取消定义 常量只能包含标量数据(boolean,integer,float 和 string) 常量和变量不同: •常量前面没有美元符号($); •常量只能用 define() 函数定义,而不能通过赋值语句; •常量可以不用理会变量范围的规则而在任何地方定义和访问; •常量一旦定义就不能被重新定义或者取消定义; •常量的值只能是标量 HP5开发教程PHP基本语法课件常量常量@预定义常量预定义常量PHP PHP 向它运行的任何脚本提供了大量的预定义常量,也称为魔术常量。
向它运行的任何脚本提供了大量的预定义常量,也称为魔术常量LINE____LINE__文件中的当前行号 __FILE____FILE__文件的完整路径和文件名 __FUNCTION____FUNCTION__函数名称(这是 PHP 4.3.0 新加的) __CLASS____CLASS__类的名称(这是 PHP 4.3.0 新加的) __METHOD____METHOD__类的方法名(这是 PHP 5.0.0 新加的)PHP_VERSIONPHP_VERSION 这个是当前 PHP 的版本,如 '3.0.8-dev' PHP_OS PHP所在的操作系统的名字,如 'Linux' TRUE 表示真值 (true) FALSE 表示伪值 (false) E_ERRORE_ERROR 这个常量指到最近的错误处 E_WARNING 这个量数指到最近的警告处 E_PARSE 本常量为剖析语法有潜在问题处 E_NOTICE 这个常式为发生不寻常但不一定是错误处例如存取一个不存在的变量 这些 E_ 开头形式的常量,可以参考 error_reporting() 函式,有更多的相关说明 HP5开发教程PHP基本语法课件数据类型数据类型PHP 支持八种原始类型支持八种原始类型四种标量类型:四种标量类型: •布尔型(boolean) •整型(integer) •浮点型(float)(浮点数,也作“double”) •字符串(string) 两种复合类型:两种复合类型: •数组(array) •对象(object) 两种特殊类型:两种特殊类型: •资源(resource) •NULL HP5开发教程PHP基本语法课件类型类型@布尔型布尔型这是最简单的类型。
总计有两个值,可以为 TRUE 或 FALSE语法语法要指定一个布尔值,使用关键字 TRUE 或 FALSE两个都是大小写不敏感的 转换为布尔值转换为布尔值数值0,0.0、空数组、空字符串,转换为布尔型时,为false;-1和其它非零值(不论正负)一样,被认为是TRUE!HP5开发教程PHP基本语法课件类型类型@数值型数值型整型整型一个 integer 是集合 Z = {..., -2, -1, 0, 1, 2, ...} 中的一个数。
语法语法整型值可以用十进制,十六进制或八进制符号指定,前面可以加上可选的符号(- 或者 +) 如果用八进制符号,数字前必须加上 0(零),用十六进制符号数字前必须加上 0x 例子 6-1. 整数文字表达浮点型浮点型HP5开发教程PHP基本语法课件类型类型@字符串字符串1PHP 没有给字符串的大小强加实现范围,所以完全没有理由担心长字符串语法语法字符串可以用三种字面上的方法定义 单引号 双引号 定界符 单引号支持的转义符少,主要使用双引号常用的转义符:HP5开发教程PHP基本语法课件类型类型@字符串字符串2定界符定界符另一种给字符串定界的方法使用定界符语法(“<<<”)应该在 <<< 之后提供一个标识符,然后是字符串,然后是同样的标识符结束字符串 $str=<<
表示字符串分别有单引号、双引号、定界符三种语法结构2、单引号和双引号的区别:、单引号和双引号的区别: 对于简单的字符串,均可 对于有转义符、插写变量的字符串,不能用单引号;3、在字符串中写变量的问题:、在字符串中写变量的问题: PHP支持以双引号或定界符为标识的字符串中直接书写变量但要求意以下事项:支持以双引号或定界符为标识的字符串中直接书写变量但要求意以下事项: A、如果为数组类型变量,不能以数组名数组名[“下标下标”]的形式来写 B、如果变量后面普通字符,如$abcdefg,PHP会认为是新的变量,需用{}括起{$ab}cdefg4、可以用点、可以用点(.)直接联系两个字符串直接联系两个字符串 如:$a..”hello chinajwork”HP5开发教程PHP基本语法课件类型类型@数组数组1PHP 中的数组实际上是一个有序图图是一种把 values 映射到 keys 的类型语法语法定义定义 array()可以用 array() 语言结构来新建一个 array它接受一定数量用逗号分隔的 key => value 参数对 array([key=>]value,...)//key可以是integer或者string//value可以是任何值"bar",12=>true);echo$arr["foo"];//barecho$arr[12];//1?>key 可以是 integer 或者 string。
如果键名是一个 integer 的标准表达方法,则被解释为整数(例如 “8” 将被解释为 8,而 “08” 将被解释为 “08”)PHP 中数组下标的变量类型不会对数组造成影响,数组的类型只有一种,它可以同时包含整型和字符串型的下标 值可以是任何值 array(6=>5,13=>9,"a"=>42));echo$arr["somearray"][6];//5echo$arr["somearray"][13];//9echo$arr["somearray"]["a"];//42?>Code:2/array.phparray2.phpHP5开发教程PHP基本语法课件类型类型@数组数组2数组的初始化:数组的初始化:方法方法1::$value){echo$key."---".$value;}?>方法方法2::$arr=array(‘red’=>’regcolor’,’blue’=>’bluecolor’);$arr=array(‘1’,’33’,’44’,’55’);HP5开发教程PHP基本语法课件类型类型@数组数组3相关函数:相关函数:each($arr)返回当前元素,并向下移动数组。
list()一般与each()拾配使用,将数组元素分解一系列的值count($arr);获得数组的个数unset($arr[0]);删除数组中的元素array_slice($ayy,intoffset,[intlength]);获得数组的子集array_unshift($ayy,key=>value);向数组开头插入元素array_push($ayy,key=>value);向数组结尾插入元素sort($arr)正向排序rsort($arr)反向排序while($el=each($arr)){echo"
".$el["key"];echo"
".$el["value"];}$arr=array('df','aa','bb');while(list($a,$b)=each($arr)){echo"
".$a;echo"
".$b;}Code:3/arraylist.phparraysort.phpHP5开发教程PHP基本语法课件类型类型@数组数组41,12=>2);$arr[]=56;//Thisisthesameas$arr[13]=56;//atthispointofthescript$arr["x"]=42;//Thisaddsanewelementto//thearraywithkey"x"unset($arr[5]);//Thisremovestheelementfromthearrayunset($arr);//Thisdeletesthewholearray?>注:unset()函数函数允许取消一个数组中的键名。
要注意数组将不会重建索引'one',2=>'two',3=>'three');unset($a[2]);/*将产生一个数组,定义为$a=array(1=>'one',3=>'three');而不是$a=array(1=>'one',2=>'three');*/$b=array_values($a);//Nowbisarray(1=>'one',2=>'three')?>HP5开发教程PHP基本语法课件类型类型@对象对象对象对象对象初始化对象初始化要初始化一个对象,用 new 语句将对象实例到一个变量中 do_foo();?>转换为对象转换为对象如果将一个对象转换成对象,它将不会有任何变化如果其它任何类型的值被转换成对象,内置类 stdClass 的一个实例将被建立如果该值为 NULL,则新的实例为空。
对于任何其它的值,名为 scalar 的成员变量将包含该值 scalar;//outputs'ciao'?>HP5开发教程PHP基本语法课件类型类型@ NULLNULL特殊的 NULL 值表示一个变量没有值NULL 类型唯一可能的值就是 NULL 注: NULL 类型是 PHP 4 引进的 在下列情况下一个变量被认为是在下列情况下一个变量被认为是 NULL:: •被赋值为 NULL •尚未被赋值 •被 unset() 语法语法NULL 类型只有一个值,就是大小写敏感的关键字 NULL HP5开发教程PHP基本语法课件练习练习1、定义一个新闻表的数组,并通过表格显示出来定义一个新闻表的数组,并通过表格显示出来2/news.phpHP5开发教程PHP基本语法课件。












