《细说PHP》的php语言结构
6.1流程控制
顺序结构 语句按照出现的先后次序自上而下依次执行
分支结构 先做判断再做选择
6.3.4 特殊的流程控制语句
break语句结束当前for、foreach、while、do-while、switch结构循环的执行
continue语句作用是跳过该次循环,继续执行下一次循环结构
exit语句作用是直接退出当前脚本
6.4 PHP中的函数
函数的调用 在需要使用函数的位置,使用函数名称和参数列表进行调用,执行完毕后返回调用位置继续向下执行
函数的返回值是函数执行后的结果返回给调用者
return语句可以向函数调用者返回函数体中任意确定的值,将程序控制权反回到调用者的作用域,即退出函数
如果要返回多个值,可以将多个值添加到一个数组中,然后返回这个数组
6.4.4 PHP变量的范围
局部变量 其作用域仅限于函数内部。不仅在函数中声明的变量是局部的,函数参数在函数名后面的括号内声明也是局部变量,当函数执行完毕后,函数内部的变量都被释放。如果在函数外部需要使用该变量值时,必须通过return语句
全局变量 作用域从变量定义开始,到本程序文件末尾
注意:在PHP函数中无法直接调用全局变量,若要使用全局变量,必须通过global关键字定义目标变量,以告诉函数此变量为全局变量。
还可以在PHP中使用预定义的全局变量数组$GLOBALS
局部变量可分为动态存储类型(默认)和静态存储类型(函数执行完毕后,内部变量依旧保存在内存中)
6.4.5 参数的传递
PHP中参数默认是按值传递,即使在函数内部改变参数的值,他并不会改变函数外部的值
按引用传递是把该数值或变量的内存储存区块相对地址导入函数之中,因此当该数值在函数中有任何变动时,会连带对父程序造成影响。可以在函数定义中在参数前预先加上&
6.4.6 变量函数
将函数名赋给变量,在程序中使用变量名并在后面加上圆括号时就调用那个函数执行
《细说PHP》的php语言结构的更多相关文章
- 漫谈C语言结构体struct、公用体union空间占用
先用代码说话: #include<stdio.h> union union_data0{ int a ;//本身占用4个字节 char b ;//本身占用1个字节 int c ; }; u ...
- 解析C语言结构体对齐(内存对齐问题)
C语言结构体对齐也是老生常谈的话题了.基本上是面试题的必考题.内容虽然很基础,但一不小心就会弄错.写出一个struct,然后sizeof,你会不会经常对结果感到奇怪?sizeof的结果往往都比你声明的 ...
- 不可或缺 Windows Native (8) - C 语言: 结构体,共用体,枚举,类型定义符
[源码下载] 不可或缺 Windows Native (8) - C 语言: 结构体,共用体,枚举,类型定义符 作者:webabcd 介绍不可或缺 Windows Native 之 C 语言 结构体 ...
- (转)PHP的语言结构和函数的区别
相信大家经常看到对比一些PHP应用中,说用isset() 替换 strlen(),isset比strlen执行速度快等. 例子: if ( isset($user) ) { //do some thi ...
- php入门 数据类型 运算符 语言结构语句 函数 类与面向对象
php PHP-enabled web pages are treated just like regular HTML pages and you can create and edit them ...
- Go语言结构体(struct)
Go 语言结构体 Go 语言中数组可以存储同一类型的数据,但在结构体中我们可以为不同项定义不同的数据类型. 结构体是由一系列具有相同类型或不同类型的数据构成的数据集合. 结构体表示一项记录,比如保存图 ...
- C语言结构体定义的几种方法
什么是结构体? 在C语言中,结构体(struct)指的是一种数据结构,是C语言中聚合数据类型(aggregate data type)的一类.结构体可以被声明为变量.指针或数组等,用以实现较复杂的数据 ...
- 对嵌入式开发C语言结构体的一点总结
今天冬至居然不上班,公司的良心啊!这回有心情写博客和日志了,好了,废话不多说.直接看下文: 鉴于嵌入式开发过程中,C语言结构体的使用当然是必不可少.话说,基础什么的比你会更牛逼的算法更重要,基础不牢, ...
- C语言结构体变量私有化
操作系统 : CentOS7.3.1611_x64 gcc版本 :4.8.5 问题描述 C语言结构体定义中的变量默认是公有(Public)属性,如果实现成员变量的私有(Private)化? 解决方案 ...
- 在C语言结构体中添加成员函数
我们在使用C语言的结构体时,经常都是只定义几个成员变量,而学过面向对象的人应该知道,我们定义类时,不只是定义了成员变量,还定义了成员方法,而类的结构和结构体非常的相似,所以,为什么不想想如何在C语言结 ...
随机推荐
- [ios] 微信订阅号: ios博文精选
晚上下班后时间充裕,平时要么看电视剧,要么玩游戏 感觉浪费时间. 最后决定自己也搞一个微信订阅号分享技术方面的东西,也提升自己. 如果大家也是一样情况,欢迎大家关注我的订阅号. 微信订阅号: ios ...
- 如何编译Apache Hadoop2.2.0源代码
转自(原文图片已丢失,本文修复图片,重新排版,并更正部分原文错误):http://www.superwu.cn/2013/12/26/913 欢迎和大家交流技术相关问题: 邮箱: jiangxinnj ...
- Oracle EBS中分类账和法人实体 的关系(有sql语句实例)
Oracle EBS中分类账和法人实体 的关系(有sql语句实例) 2012-12-06 16:05 2822人阅读 评论(0) 收藏 举报 分类: Oracle EBS(12) Oracle数据 ...
- JavaScript编写连连看
这几天写题比较少,做了一下网页设计的期末大作业.搞了个连连看,核心代码和hdu 1175那个题目一样. 越来越觉得学ACM是十分有用的,软件的核心是数据结构和算法,学会了DFS,连连看就水到渠成了. ...
- git stash让bug来的更猛烈些吧
git stash可以用来暂存当前正在进行的工作,比如想pull最新的代码,又不想加新commit, 或者有一个紧急的bug需要修复,但是这个bug又与你已经在做的工作(还没完成)有关联.这个时候有的 ...
- [coding horror] 1 - sum 2
sum 2 描述 输入一个递增排序的数组和一个数字S,在数组中查找两个数,是的他们的和正好是S,如果有多对数字的和等于S,输出两个数的乘积最小的. 对应每个测试案例,输出两个数,小的先输出. codi ...
- 曾经让我很吐血的Bug(初学者)
1.MSSql 就是 sql Server. 2.用session的时候一定要先实现接口IRequiresSessionState: 3.form表单中type=file传送文件的时候一定要在form ...
- maven插件报错之解决
maven插件报错之解决 用m2eclipse创建Maven项目时报错 maveneclipsebuilddependenciesauthorizationplugins 用m2eclipse创建 ...
- 关于Python的文件IO
使用Open函数, 第一个参数为文件名, 例如"C:\abc.txt",这里要注意的是r"C:\abc.txt". 第二个参数为文件的操作方式, 这里着重探讨写 ...
- LeetCode 213. House Robber II
Note: This is an extension of House Robber. After robbing those houses on that street, the thief has ...