PHP脚本语言之基础语法总结

PHP是一种在服务器端执行的可以嵌入HTML文档的脚本语言,PHP独特的语法混合了C、Java、Perl以及PHP自创的语法。在性能上,PHP比CGI或者Perl更快速地执行动态网页,以下将分享PHP的基础知识。

基本语法

#PHP脚本写法?php//PHP代码?#PHP文件相关默认文件扩展名是".php"。文件通常包含HTML标签和一些PHP脚本代码。每个代码行都必须以分号结束#PHP输出方式echo可以输出一个或多个字符串print只允许输出一个字符串,返回值总为1echo输出的速度比print快var_dump()函数返回变量的数据类型和值#PHP注释//这是PHP单行注释#这也是PHP单行注释/*这是PHP的多行注释*/PHP变量

#基本概念变量是用于存储信息的"容器"与代数类似:z=x+yx或y改变,z就会改变php是弱语言,会根据存储信息的数据类型自动把变量转换为相应的数据类型#PHP变量规则变量以$符号开始,后面跟着变量的名称变量名必须以字母或者下划线字符开始变量名只能包含字母数字字符以及下划线(A-z、0-9和_)变量名不能包含空格变量名是区分大小写的($z和$Z是两个不同的变量)#创建(声明)PHP变量PHP没有声明变量的命令变量在第一次赋值给它的时候被创建#变量作用域:脚本中变量的使用范围#local作用域在所有函数外部定义的变量,拥有全局作用域在该函数内部定义的变量,拥有局部作用域,#global作用域global关键字放在变量前面,用于函数内访问全局变量或$GLOBALS[变量],也可以用于函数内访问全局变量#static作用域当一个函数完成时,它的所有变量通常都会被删除static关键字放在变量前面,即把变量存在内存中,可以免于被删除#parameter(参数)作用域参数是通过调用函数时将值传递给函数的局部变量#超级全局变量$_GET–get传送方式$_POST–post传送方式$_REQUEST–可以接收到get和post两种方式的值$GLOBALS–引用全局作用域中可用的全部变量$_FILES–上传文件使用$_SERVER–系统环境变量$_SESSION–用于会话控制$_COOKIE–用于会话控制$_ENV–服务器端环境变量数据类型

#String(字符串)一个字符串是一串字符的序列,就像"Helloworld!"可以将任何文本放在单引号和双引号中#Integer(整型)整数是一个没有小数的数字整数可以是正数或负数包括十进制,十六进制(以0x为前缀)或八进制(前缀为0)必须至少有一个数字(0-9)不能包含逗号或空格#Float(浮点型)浮点数是带小数部分的数字,或是指数形式#Boolean(布尔型)布尔型可以是TRUE或FALSE布尔型通常用于条件判断#Array(数组)数组可以在一个变量中存储多个值使用PHPvar_dump()函数返回数组的数据类型和值#Object(对象)对象可以用于存储多个数据。使用class关键字声明类对象,类是可以包含属性和方法的结构在类中定义数据类型,在实例化的类中使用数据类型#NULL(空值)NULL值表示变量没有值NULL是数据类型为NULL的值可通过设置变量值为NULL来清空变量数据#数据类型比较松散比较:使用两个等号==比较,只比较值,不比较类型,叫等于严格比较:用三个等号===比较,除了比较值,也比较类型,叫全等PHP常量

#基本概念常量值被定义后,在脚本的其他任何地方都不能被改变常量是一个简单值的标识符,该值在脚本中不能改变常量在整个脚本中都可以使用#PHP常量规则一个常量由英文字母、下划线、和数字组成但数字不能作为首字母出现常量名不需要加$修饰符#设置PHP常量booldefine(string$name,mixed$value[,bool$case_insensitive=false])name:必选参数,常量名称,即标志符value:必选参数,常量的值case_insensitive:可选参数,如果设置为TRUE,该常量则大小写不敏感默认是大小写敏感的#魔术常量(预定义常量)__LINE__文件中的当前行号__FILE__文件的完整路径和文件名__DIR__文件所在的目录__FUNCTION__函数名称__CLASS__类的名称__TRAIT__Trait的名字__METHOD__类的方法名__NAMESPACE__当前命名空间的名称(区分大小写)字符串

#字符串变量字符串变量用于存储并处理文本单引号的字符串不能识别变量和转义字符双引号的字符串可以识别变量和转义字符#并置运算符并置运算符(.)用于把两个字符串值连接起来#EOF(heredoc)字符串块,可以放入任何符号,不需要转义#同单引号效果echoEOFh1我的第一个标题/h1p我的第一个段落。/pEOF;//结束需要独立一行且前后不能空格#同双引号效果#变量不需要用连接符.或,来拼接echo"EOF"h1我的第一个标题/h1p我的第一个段落。/pEOF;//结束需要独立一行且前后不能空格运算符

#算术运算符x+y加x-y减x*y乘x/y除x%y模(除法的余数)-x取反a.b并置intdiv(x,y)除,向下取整#赋值运算符x=y等同于x=y等号赋值x+=y等同于x=x+y加x-=y等同于x=x-y减x*=y等同于x=x*y乘x/=y等同于x=x/y除x%=y等同于x=x%y模(除法的余数)a.=b等同于a=a.b连接两个字符串#递增/递减运算符++x预递增,x加1,然后返回xx++后递增,返回x,然后x加1--x预递减,x减1,然后返回xx--后递减,返回x,然后x减1#比较运算符x==y等于x===y绝对等于x!=y不等于xy不等于x!==y绝对不等于xy大于xy小于x=y大于等于x=y小于等于#逻辑运算符xandy与一错全错xory或一对全对xxory异或一对才对xy与一错全错x

y或一对全对!x非#数组运算符x+y集合,x和y的集合x==y相等,如果x和y具有相同的键/值对,则返回truex===y恒等,如果x和y具有相同的键/值对,且顺序相同类型相同,则返回truex!=y不相等,如果x不等于y,则返回truexy不相等,如果x不等于y,则返回truex!==y不恒等,如果x不等于y,则返回true#三元运算符(expr1)?(expr2):(expr3)expr1成立则返回expr2的值(expr1)??(expr2)expr1成立则返回expr1的值#组合比较符$c=$a=$b;如果$a$b,则$c的值为1如果$a==$b,则$c的值为0如果$a$b,则$c的值为-1#运算符比较括号内部优先,可增加可读性流程控制

#if条件语句用于根据不同条件执行不同动作#elseif语句和else语句可选,有elseif语句必须有else语句if(条件){//if条件成立时执行的代码;}elseif(条件){//elseif条件成立时执行的代码;}else{//条件不成立时执行的代码;}#switch条件语句用于根据多个不同条件执行不同动作switch(n){caselabel1://如果n=label1,此处代码将执行;break;caselabel2://如果n=label2,此处代码将执行;break;default://如果n既不等于label1也不等于label2,此处代码将执行;}#while循环将重复执行代码块,直到指定的条件不成立while(条件){要执行的代码;}#do...while语句会至少执行一次代码#然后检查条件,只要条件成立,就会重复进行循环do{要执行的代码;}while(条件);#for循环用于预先知道脚本需要运行的次数的情况for(初始值;条件;增量){要执行的代码;}#foreach循环用于遍历数组foreach($arrayas$key=$value){要执行代码;}自定义函数

#函数语法functionfunctionName([参数...]){//要执行的代码//返回值return$res;}//调用函数[]意为可选functionName([参数...]);#函数准则函数的名称应该提示出它的功能函数名称以字母或下划线开头(不能以数字开头)PHP数组

#数组类型数值数组-带有数字ID键的数组关联数组-带有指定的键的数组,每个键关联一个值多维数组-包含一个或多个数组的数组#创建数组#自动分配ID键(ID键总是从0开始)$cars=array("Volvo","BMW","Toyota");$cars=["Volvo","BMW","Toyota"];$age=array("Peter"="35","Ben"="37","Joe"="43");$age=["Peter"="35","Ben"="37","Joe"="43"];#人工分配ID键$cars[0]="Volvo";$cars[1]="BMW";$age[Ben]="37";$age[Joe]="43";#二维数组$cars=array(array("Volvo",,96),);#多维数组array("google"=array("Google搜索","



转载请注明地址:http://www.sanbaicaoasb.com/scgj/8572.html
  • 上一篇文章:
  • 下一篇文章: 没有了
  • 热点文章

    • 没有热点文章

    推荐文章

    • 没有推荐文章