版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、Lecture 2:PHP基础,实验课程目标 1.掌握PHP基本语法 2.掌握PHP变量、常量、数组与数据类型 3.掌握HTML中PHP的输出 4.掌握PHP基本控制流程,PHP语法的概述,PHP语法主要借鉴于C/C+,也部分参考了Java和Perl。 类似C语言,书写PHP代码的时候,每句完成代码后都要以分号“;”结束。 既然是一门编程语言,肯定会由多种编程元素组成,如变量、常量、运算符、控制语句、数组、字符串、函数和对象等。,PHP程序注释,通常使用: (1) / (2) /*/ (3) #,; / 采用C+的注释方法 /* 多行注释 对于大段的注释很有用的哦 */ echo 多行注释方法
2、即 /*.*/ ; echo Unix的注释方法即 # ; # 使用 UNIX Shell语法注释 ?,类似ASP的,当然您也可以自己指定。通常情况下,有以下几种方式:,(1) /推荐使用 (2) (3) (4) ,嵌入方法,引用文件的方法有两种:include和require include 的使用方法 如: include(MyIncludeFile.php); 。这个函数一般是放在流程控制的处理部分中。PHP 程序网页在读到 include 的文件时,才将它读进来。这种方式,可以把程序执行时的流程简单化。 require 的使用方法 如: require(MyRequireFile.ph
3、p); 。这个函数通常放在 PHP 程序的最前面,PHP 程序在执行前,就会先读入 require 所指定引入的文件,使它变成 PHP 程序网页的一部份。常用的函数,亦可以这个方法将它引入网页中。,引用文件,标示符,标示符是适用于变量、函数和其他各种用户定义对象的一般术语。 标示符可以由一个或多个字符组成,但必须以字母或下划线开头。 标示符区分大小写。 标示符名不能与任何PHP预定义关键字。,PHP中的常量,PHP中对常量的类型要求是不严格的 常量分为预定义常量和自定义常量两种 预定义常量:PHP内部事先已经定义了的常量 预定义常量有多种不同的开头,决定了各种不同的类别 自定义常量:由用户自行
4、依据程序的需要来定义的常量 自定义常量的定义格式: define (“常量名”, 表达式或值) 例:define (“CONSTANT”, “Hello, World.”),示例,PHP的变量,1、PHP变量名的约定: (1) PHP的变量名区分大小写; (2) 变量名必须以美元符号$开始; (3) 变量名开头可以以下划线开始; (4) 变量名不能以数字字符开头. 2、PHP变量的类型: PHP变量数据类型的定义是通过变量的初始化,系统设定. $mystring = 我是字符串 ; $NewLine = 换行了 ; $int1 = 38 ; 数据类型可分为二种:一是标量数据类型 ,二是复合数据
5、类型。,标量数据类型: (1)布尔型(boolean) (2)整形(integer) (3)浮点型(float)(浮点数,也做”double”) (4)字符串(string) 复合数据类型 (1)数组(array) (2)对象(object) 另外,PHP中,还有两种特殊的数据类型: (1)资源(resource) (2) 空值(NULL),布尔型(boolean),这是最简单的类型。boolean 表达了真值,可以为 TRUE 或 FALSE。 注: 布尔类型是 PHP 4 引进的。 语法 要指定一个布尔值,使用关键字 TRUE 或 FALSE。两个都是大小写不敏感的。 通常你用某些运算符返
6、回 boolean 值,并将其传递给流程控制。,整形(integer)和浮点型(float),整数大小超出其范围后,自动转化为双精度型,,浮点型(float),双精浮点型 浮点数(也叫“floats”,“doubles”或“real numbers”)可以用以下任何语法定义: 浮点数的字长和平台相关,尽管通常最大值是 1.8e308 并具有 14 位十进制数字的精度(64 位 IEEE 格式)。,浮点数精度显然简单的十进制分数如同 0.1 或 0.7 不能在不丢失一点点精度的情况下转换为内部二进制的格式。这就会造成混乱的结果:例如,floor(0.1+0.7)*10) 通常会返回 7 而不是预
7、期中的 8,因为该结果内部的表示其实是类似 7.9999999999.。 这和一个事实有关,那就是不可能精确的用有限位数表达某些十进制分数。例如,十进制的 1/3 变成了 0.3333333. . .。 所以永远不要相信浮点数结果精确到了最后一位,也永远不要比较两个浮点数是否相等。如果确实需要更高的精度,应该使用任意精度数学函数库或者 gmp 函数库。,字符串(string),字符串可以用三种字面上的方法定义。 单引号 双引号 定界符,单引号 指定一个简单字符串的最简单的方法是用单引号(字符 )括起来。 要表示一个单引号,需要用反斜线()转义,和很多其它语言一样。如果在单引号之前或字符串结尾需
8、要出现一个反斜线,需要用两个反斜线表示。注意如果你试图转义任何其它字符,反斜线本身也会被显示出来!所以通常不需要转义反斜线本身。 注: 在 PHP 3 中,此情况下将发出一个 E_NOTICE 级的警告。 注: 和其他两种语法不同,单引号字符串中出现的变量和转义序列不会被变量的值替代。,字符串(string),反斜线$美元符号“双引号0-71,3此正则表达式序列匹配一个用八进制符号表示的字符 x0-9A-Fa-f1,2此正则表达式序列匹配一个用十六进制符号表示的字符 此外,如果试图转义任何其它字符,反斜线本身也会被显示出来! 双引号字符串最重要的一点是其中的变量名会被变量值替代。,字符串(st
9、ring),定界符 另一种给字符串定界的方法使用定界符语法(“”)。应该在 之后提供一个标识符,然后是字符串,然后是同样的标识符结束字符串。 结束标识符必须从行的第一列开始。同样,标识符也必须遵循 PHP 中其它任何标签的命名规则:只能包含字母数字下划线,而且必须以下划线或非数字字符开始。,字符串(string),3、检查变量的类型(var_dump()),$b类型是:; var_dump($b); echo $c类型是:; var_dump($c); ?,4变量的作用域,变量的使用范围,也叫做变量的作用域,作用域从技术上来讲,就是变量定义的上下文背景(也就是它的有效范围)。大部分PHP变量只
10、有一个单独的范围。这个单独的范围跨度同样包含了include和require引入文件,例如: 这里变量$a将会在包含文件b.inc中生效。,在用户自定义函数中,一个局部函数范围将被引入。任何用与函数内部的变量按缺省情况将被限制在局部函数范围内。例如: 这个脚本不会有任何输出,因为echo语句引用了一个局部版本的变量$a,而且在这个范围内,它并没有被赋值。你可能注意到PHP的全局变量和C语言有一点点不同,在C语言中,全局变量在函数中自动生效,除非被局部变量覆盖。这可能引起一些问题,有些人可能漫不经心的改变一个全局变量。PHP中全局变量在函数中使用时必须申明为全局。,使用一个全局的变量 globa
11、l关键字,以上脚本的输出将是“3”。在函数中申明了全局变量$a和$b,任何变量的所有引用变量都会指向到全局变量。对于一个函数能够申明的全局变量的最大数,PHP没有限制。,例如:,PHP超级全局变量,$_SERVER $_GET $_POST $_COOKIE $_FILES $_ENV $_REQUEST $_SESSION $GLOALS,5、连接符(.),在PHP中,字符串的连接符和C+语言以及Java等是非常不一样的。它使用“.”来做为连接符,而不是像我们其他语言一样,拥有点语法。,注:因为“.”只是字符串连接符,就好象VB里的“ echo $arr“foo”;/输出bar echo $
12、arr12;/输出1 ? /key可以是整型或者是字符串,而value可以是任何值,二、操纵PHP数组,(一)在数组的末尾添加值 要向一个存在的索引数组中插入较多的值,可以使用 语法: $family = array(Fred,Wilma); $family = Pebbles; /$family2为Pebbles (二)指定值的范围 函数range()创建连续的整数或字符的数组,其值在传递给它的两个参数值之间,例如: $numbers = range(2,5); /$numbers = array(2,3,4,5) $letters = range(a,z); /$letters保存字母表
13、$reversed_numbers = range(5,2); /reversed_numbers=array(5,4,3,2) 只有字符串参数的第一个字母用于建立范围: range(aaa,zzz); /与range(a,z)相同,(三)得到数组的大小函数 count()和sizeof()的使用方法和作用是相同的。他们返回数组中的元素数。使用哪一个函数没有格式上的有限选择,下面是一个例子: $family = array(Fred,Wilma,Pebbles); $size = count($family); $size为3,(四)填充数组,要用相同的值创建一个初始化的数组,可使用array
14、_pad()。array_pad()的第一个参数是该数组,第二个参数是你想要该数组拥有的最少元素数,第三个参数是为所创建的元素给出值。array_pad()函数返回一个新的填充数组,而抛弃它的参数数组。 下面例子反映了array_pad()的工作过程:,$scores = array(5,10); $padded = array_pad($scores,5,0); /$padded现在为array(5,10,0,0,0),(五)在数组中删除和插入元素 函数array_splice()可以在数组中删除或插入单元。 $removed = array_splice( array,start,length,replacement );,删除 $subject=array(php,asp,c,c#); $removed=array_splice($subject,2); 替换 $new=array(sql server,xml,mysql); Array_splice($subject,4,3,$new); 插入 Array_splice($
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年永大电梯说课稿
- 2026及未来5年中辣片项目可行性研究报告(市场调查与数据分析)
- 初中防欺凌“2025”说课稿
- 2026年暖通规范测试题及答案
- 第22课 伟大的历史转折说课稿2025学年高中历史华东师大版上海第六分册-华东师大版上海2007
- 小学体育竞技说课稿
- 小学生人际情绪说课稿2025
- 2026年任意球说课稿感上衣
- 2026年云南省中考语文古诗文名句默写68题全新原创专项训练
- 心脏瓣膜病护理方案
- 2025年巴州事业单位面试真题及答案
- 2026年体育中考模拟笔试题及答案
- 2026年浙江绍兴2026年初中学业水平考试数学模拟试卷(含答案)新版
- 污水处理化验员试题及答案
- 上海证券交易所公司债券预审核指南审核和发行程序及其实施
- 2025版高职院校人才培养方案指导意见
- 2026年内江市市中区社区工作者招聘笔试参考题库及答案解析
- 2026广西北部湾国际港务集团有限公司春季招聘273人建设考试参考题库及答案解析
- 2025~2026学年云南省师范大学附属中学呈贡学校九年级中考适应性(三)道德与法治试卷
- 检验科新进人员岗前培训
- DB13∕T 6225-2025 国内首次使用的化工工艺安全可靠性论证导则
评论
0/150
提交评论