您好,欢迎访问三七文档
当前位置:首页 > IT计算机/网络 > 数据库 > PHP基本语法和语言结构总结笔记
1、PHP基础部分笔记总结作者:丛浩整理:lamp47——温成毅---------------------------基本语法部分-----------------------------一、插入PHP语言的方法:脚本区域:?PHP?完整模式,推荐大家使用第一种??需要PHP.ini文件进行开启open_short_tags%%需要PHP.ini文件进行开启asp_tagesscriptlanguage=php/script语句结束符号:;(英文状态下的分号)?phpecho$a=100;?//{}有大括号的语句结尾不需要使用分号。二、变量变量可变的量命名规则:1、以$开始2、可以用中文,但是不推荐使用,不是所有版本都支持中文。3、数字可以使用数字但是不能开头。4、特殊字符不可以使用,除了_之外放前后都可以5、变量的命名要有意义6、变量是大小写敏感的$a和$A是不同的两个变量可变变量所谓可变变量,即把变量的值作为变量名注意:使用可变变量时,被用来作为变量名的变量值一定要符号变量的命名规则才能使用!变量引用八种数据类型标量1、整型(int)$a=100;//10进制整型数值$。
2、a=0100;//8进制整型数值$a=0X123;//16进制整型数值echo$a;2、浮点型(float)$a=250.41;//小数$a=2.157e3;//科学计数法表示2.157乘10的3次方var_dump($a);3、字符串(string)单引号赋值:$add='老虎老鼠傻傻分不清楚';$str='我是一只小\'老\'虎'.$add;echo$str;双引号赋值:$str=我是'一只'\n小\t老虎{$add}哦也;echo$str;定界符赋值:$str=LOVE庭前芍药,去你的!$add''你上\n我下LOVE;var_dump($str);echo$str;字符串赋值时使用单引号与双引号的区别:1).单引号不能解析变量,双引号可以解析变量。2).单引号不解析转义字符。双引号可以解析转义字符。单引号可以解析\'\\3).单引号中可以插入双引号,双引号中可以插入单引号,相互插入的时候,对应的引号只是单纯的字符而已。4).单引号使用变量需要用字符连接符.双引号也可以用。5).双引号使用变量时候用{}定界//“${a}isavariable!”6).使用的时候用单引号节省效率。。
3、定界符的功能和双引号一样。一般情况下都用单引号。,SQL语句的时候用双引号,提高开发效率定界符大文章的使用定界符方便SQL语句的时候用双引号4、布尔值真true假false$a=FALSE;var_dump($a);布尔值为假的情况:整形0浮点型的0.0空字符串字符串'0'布尔false空数组array()没有成员属性的对象(PHP4)资源都是真null复合数据类型5、数组array();6、对象object特殊数据类型7、资源resource8、null空类型三种为空的情况:没有声明的变量直接赋值为null被声明但是被unset()掉注意:空字符串和0都不是空类型注意区分!!只有以上三种情况才为空!类型转换强制类型转换三种方法一:(类型)变量这里的(类型)属于运算符6种转换类型整型转换:(int)(integer)浮点型转换:(float)(real)(double)字符串转换:(string)布尔型转换:(bool)(boolean)数组转换:(array)对象转换:(object)方法二:3种转换类型intval()强制转换为整型strval()强制转。
4、换为字符串floatval()强制转换为浮点型字符串转化为数值(整形和浮点型)的方式,遇到第一个不是数字的字符就舍弃后面虽有的字符(无论后面有没有数字)方法三:settype(变量,数据类型)数据类型的判断1、var_dump()函数没有返回值只能调试代码适用$a=123;$type=var_dump($a);var_dump($type);2、gettype(变量)可以查询所有的8种类型【返回值】:代表该类型的字符串gettype()函数返回值列表:■“integer”■“double”(由于历史原因,如果是float则返回“double”,而不是“float”)■“string”■“boolean”(从PHP4起)■“array”■“object”■“resource”(从PHP4起)■“NULL”(从PHP4起)■“userfunction”(只用于PHP3,现已停用)■“unknowntype”3、is系列的类型判断函数$a=123;$jg=is_float($a);var_dump($jg);标量:is_int()is_float()is_string()is_bool()。
5、复合类型:is_array()is_object()特殊类型:is_resource()is_null()is_numeric()是不是数值类型is_scalar()是不是标量isset()unset()empty()isset(变量)当他的值是null的时候就是假unset(变量)删除的是变量名和变量值之间的联系而已不删除值。empty(变量)【返回值】:为空返回布尔值true不为空返回falseint0float0.0'''0'falsenullarray()。。。同布尔值false三、常量什么是常量:石碑上的字$a=100;常量取值范围是标量!define('LAMP','PHP编译环境');echoLAMP;常量的命名1、常量也用英文,可以用中文,但是不提倡。2、可以用数字,不能放开头3、特殊字符不能用,除了__可以在任何位置4、命名有意义5、常量默认大小写敏感,但是可以设置为不敏感define(参数,参数,true)第三个参数默认为false(大小写敏感)改为true则不区分大小写常量的修改或删除一旦定义不可以删除或者修改。常量的作用范围常量的作用范围是全局的函数内外都。
6、可以用。//变量不是全局的。四、运算符算术运算符【+-*/%】(算术加、算术减、算术乘、算术除、算术取余)字符串运算符【.】(英文状态下的点)赋值运算符【+=-=*=/=%=.=】$a+=$b相当于$a=$a+$b$a-=$b相当于$a=$a-$b$a*=$b相当于$a=$a*$b$a/=$b相当于$a=$a/$b$a%=$b相当于$a=$a%$b$a.=$b相当于$a=$a.$b比较运算符逻辑运算符逻辑与&&and两边都为真才是真洗脸的例子半边脸不算洗完2边全洗完才算洗完脸逻辑或||or任何一个为真都为真只有全假才是假找钱包的例子,任何一个找到就为找到!逻辑非!真变假假变真逻辑异或xor一真一假才为真其余都是假结婚的例子只有男女可以结婚男男女女都不可以位运算其他运算符三元运算符【格式】:条件?真:假【返回值】:真区间或者假区间@单行错误抑制符但是这个玩意效率太低所以不用@$link=mysql_connect();//可以屏蔽链接mysql时候的错误提示``执行shell脚本参见shell_exec()函数-------------------------。
7、--语言结构部分-----------------------------一、流程控制顺序结构解决~分支结构单向分支结构(真有一个真区间if区间)格式1.0版本if(条件表达式)PHP语句;条件表达式为真执行紧随其后的第一条PHP语句,剩下的按照顺序结构执行不受if条件的影响(影响范围:紧随其后的第一条PHP语句)格式2.0版本if(条件表达式){php语句;php语句;php语句;php语句;...}条件表达式为真,执行{}中的所有PHP语句,作用范围(if表达式之后的{}中的所有内容)双向分支结构格式1.0版本if(条件表达式)一个表达式;else另外一个表达式;if表达式为真执行if区间真区间如果为假执行else区间假区间作用范围仅是if和else紧随其后的第一条语句格式2.0版本if(条件表达式){一个表达式;多个表达式;}else{另外一个表达式;多个表达式;}多向分支结构基本结构if(条件表达式){}elseif(条件表达式){}elseif(条件表达式){}else{}switch(变量){case值:PHP语句;[break;]//break语句可选,不加br。
8、eak则满足条件后继续之后后面的语句不跳出分支结构case值:PHP语句;[break;]case值:PHP语句;[break;]...default:PHP语句;}巢状分支结构(双向分支的嵌套结构)巢状分支结构无论是在if区间还是在else区间异或者是2个空间都有都是巢状分支!说白了就是双向分支的嵌套而已。循环结构while()while(条件表达式){循环体;}do...while()布尔值循环do{循环体;}while(条件表达式);先执行一遍循环体,在进行判断,根据判断结果决定是否继续执行循环for()计数型循环for(初始化变量1,初始化变量2;给定变量范围;增量){执行循环的语句;}【执行过程:】先是初始化-判断变量范围-满足执行循环-执行增量-判断变量范围-满足执行循环-执行增量…初始化变量只进行一次。static声明的静态变量也值初始化一次表达式拆解分析:$i=1;$num=0;for(;;){if($i100){break;}$num+=$i;$i++;}echo$num;$i=1;$num=1;while($i=100){$num*=$i;$i++;}ec。
9、ho$num;break在这里跳出循环结构switchbreak跳出分支结构continue继续。结束本次循环(跳出本次,不执行),继续下一次的循环.foreach()数组遍历专用函数:定义一个功能,在全局调用实现相同效果!提高代码的重用性!【定义函数】function函数名(){函数体;[return;]}【调用函数】aaa();//函数一旦定义,可以在页面内任何地方调用functionaaa(){echo'中午的午餐好吃吗?';}声明了函数,要想执行,必须调用。函数的声明可以在调用前,也可以在调用之后,这与函数在内存中的存储有关。可执行代码段中。【函数的命名规范】1.不能用中文,使用英文2.可以使用数组,但是不能以数字开头3.不可以使用特殊字符_除外,并且可以在任何地方使用4.命名要有意义5.大小写不敏感不区分大小写6.函数命名绝对不可以冲重复,重载【关于return】return有返回值可以被变量接收。如果函数没有retutrn就表示他没有返回值,不能被变量接收。return本身有终止函数执行的作用,函数遇到return就不在继续往下执行了,跳出函数!return如果需要使用。
10、多个一般是分直结构来使用有return待返回值的函数。没有return的函数执行过程函数。【函数的参数问题】1、有参数就必须传参(没有默认值)2、有默认值的时候,调用时候可以不穿参数,如果传了实参按照实参的值进行计算。3、如果存在多个参数,调用函数的实参和函数的形参之间必须一一对应。4、如果想设置一个参数必须填写,设置形参的时候不给默认值就OK啦。5、形参既有有默认值的时候也有没有默认值的时候。没有默认值的放在前面,这是逻辑问题而非代码问题。function函数名(参数名[=默认值],参数名[=默认值],参数名[=默认值,。。。。]){函数体;[return]}functionbbb($xc){echo$xc;}bbb('我是实参');【函数的变量作用域】局部变量函数内部声明的变量就是局部变量只能在函数内有效functionccc(){$abc='午餐吃的啥呀';}ccc();echo$abc;全局变量方法一:globalglobal声明函数内外相通的变量名为一个变量(以外部变量为准。)有结婚就有离婚unset()之后内部变量被清空,外部。
本文标题:PHP基本语法和语言结构总结笔记
链接地址:https://www.777doc.com/doc-4800231 .html