- 1、本文档共27页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
PHP课04PHP函数
回顾
运算符
算术运算符: 基本运算(除数不能为0)
比较运算符: 大小比较(类型比较), 如果两个类型不一样,系统会自动转换成统一类型
赋值运算符: 基本赋值和运算赋值(右边是一个计算整体)
逻辑运算符: 是对结果进行运算(逻辑与,逻辑或称之为短路运算)
错误抑制符: 抑制简单错误
连接运算符: 把两边数据当做字符串连接
三目运算符: 简单的if else结构(复合三目运算,内部三目运算用括号包裹)
自操作运算: 前置与后置的区别
位运算符: 按位比较, 计算机码(原码,反码和补码)
$a = 5;0000000000000101; //正数: 原码反码补码一样
Var_dump(~$a);
//取反: 什么都反过来111111111 111111111 //系统内部: 符号位1,认为是负数(补码)
//求反码(符号位不变) -1操作111111111 111111111 //反码
//求原码(符号位不变)
1000000 00000000000000110; //原码: -6
符号结合的优先级
代码执行结构: 顺序结构(默认的),分支结构,循环结构
分支结构: if分支和switch分支
循环结构: for循环,while循环和do-while循环
循环结构内部控制 : 有时候在循环的内部可能碰到某些特殊情况,需要让循环中止或者终止, 需要使用内部控制语句: continue和break
Continue: 中止,中间停止,以下的内容不再继续,重新开始循环
Break: 终止, 绝对停止, 整个循环结束
不管是continue还是break,不单单只能控制自己的循环,而且还能控制外部循环(前提是被循环包含),可以使用循环层数来控制
Continue/break 循环层数; //循环层数默认是1
模板标签: 用来替换大括号, 为了让代码结构更明显
函数: 实现某个功能的代码集合, 实现代码的复用
函数要素: 关键字,函数名,参数列表(形参和实参),函数体,返回值
参数传值: 值传递(默认的)和引用传递(定义形参的时候指定地址符)
函数
参数默认值
参数默认值: 在定义函数的时候, 发现参数有可能外部在传入的时候基本一致,使用某个固定的值: 为了给函数调用者提供方便: 可以给形参指定一个默认值,那么当用户在调用函数的时候,如果不给实际参数,那么对应的形参就会使用默认值来进行处理.
Function 函数名(参数名 = 值){
//参数没有真正的值: 形参是在调用的时候才会被赋值
}
如果说一个函数有多个参数,那么有默认值的参数必须放到没有默认值的参数之后,否则没有办法使用默认值.
返回值
Return关键字: return代表返回数据给函数调用处: 代表函数的结束(一定碰到return,函数必然结束)
只要是函数一定有返回值: 但是不一定有return,如果函数没有明确使用return返回值,那么函数执行结束,默认返回NULL
函数体
函数体: 实现函数的核心部分, 可以几乎是任意代码(变量,常量,分支结构,循环结构)
作用域
PHP作用域: 变量可以被使用的范围(scope)
程序作用域: 全局作用域和局部作用域
全局: 任何地方都可以使用
局部: 只有某个特定的空间内部可以使用
PHP中也有全局作用域和局部作用域
PHP全局: 外部作用域, 凡是在结构(函数和类)的外部
PHP局部: 内部作用域, 只能在结构的内部(特定函数自己)
在不同的作用域中定义的变量也分为两种:全局变量和局部变量
全局变量: 在函数外部定义的变量
局部变量: 在函数内部定义的变量
全局作用域只能访问全局变量; 局部作用域只能访问局部变量
跨”域”访问
希望在局部作用域可以访问全局变量(成立)
方案1: 引用传值
方案2: 所有的全局变量都会自动收纳到$GLOBALS超全局预定义变量中
超全局: 超越全局, 没有作用域的限制: 可以在函数的内部使用$GLOBALS来访问全局变量
注意: $GLOBALS不是引用全局变量,而是直接代表全局变量: 删除
方案3: 使用global关键字引入全局变量
Global关键字: 在函数内部定义一个与全局变量同名的变量名, 系统会自动尝试去全局作用域中找同名的变量: global只能声明,不能复制
找到: 将全局变量所指向的内存地址赋值给内部定义的同名局部变量(形成引用)
没有找到: 在全局作用域创建一个与局部变量同名的全局变量: 指向同一块内存地址
在全局作用域可以访问局部变量(不成立): 利用了global关键字通过在函数内部创建一个同名的全局变量, 最终访问的是全局变量
您可能关注的文档
- Multisim作业二 高频小信号放大器设计报告.docx
- NTC敏电阻原理及应用.doc
- NSAID临床应用.doc
- NY市心谷小区供配电系统设计62.docx
- OA办公管理系的设计与实现开题报告.doc
- NY市林谷小区供配电系统设计1.docx
- Need201042201需求分析说明书贷后检查修改V1.3.doc
- OEC管理式并分析其可推广性.doc
- NiONTiO2复合p结光催化剂及光催化制氢性能研究.ppt
- MRI原及诊断.ppt
- 2024年江西省高考政治试卷真题(含答案逐题解析).pdf
- 2025年四川省新高考八省适应性联考模拟演练(二)物理试卷(含答案详解).pdf
- 2025年四川省新高考八省适应性联考模拟演练(二)地理试卷(含答案详解).pdf
- 2024年内蒙通辽市中考化学试卷(含答案逐题解析).docx
- 2024年四川省攀枝花市中考化学试卷真题(含答案详解).docx
- (一模)长春市2025届高三质量监测(一)化学试卷(含答案).pdf
- 2024年安徽省高考政治试卷(含答案逐题解析).pdf
- (一模)长春市2025届高三质量监测(一)生物试卷(含答案).pdf
- 2024年湖南省高考政治试卷真题(含答案逐题解析).docx
- 2024年安徽省高考政治试卷(含答案逐题解析).docx
文档评论(0)