PHP开发——函数
函数的定义
l 函数是一段命名的代码段。
函数可以减轻工作量,减少重复的代码,方便后期维护。
函数的参数
l 实参:调用函数时,传递的参数就是实参,含有真正数据的。
l 形参:定义函数时的参数。
值传递
l 函数参数的值传递,就是将参数的值,复制一份,传到函数中。
引用传递
l 值传递速度比较慢,但修改其中一个不会影响到另一个;
l 引用传递速度比较快,但修改其中一个,另一个也会改变。
l 引用传递,是将一个变量的地址,复制一份,传到函数中。
默认参数
l 如果实参个数少于形参个数时,可以用一个默认参数来代替。
l 默认参数,只能用在定义函数时的参数。
l 默认参数的位置,必须放在非默认参数的右边。
l 默认参数的值,只能是:字符串、整型、浮点型、布尔型、NULL、数组。
函数可变数量参数
l func_get_args( void ):返回一个参数列表的枚举数组,参数数组的下标是从0开始的正整数
l func_get_arg( $index ):返回参数数组中,指定下标的参数的值;
l func_num_args( void ):返回实参的个数。
l 提示:以上三个系统函数,都只能在函数定义中来使用。
返回值
l 函数的返回值,通过return语句来实现;
l 将函数的执行结果,返给了函数调用者;
l return语句一旦执行,函数立即结束,函数剩余的代码不再执行了。
l return语句有”中断”函数、”退出”函数;
l return不能同时返回多个值,只能返回一个值。如果想返回多个值,可以放入数组。
可变函数
l 在调用函数时,函数的名称是一个变量,该变量的值是一个字符串的函数名。如:$a()
l 在这种情况下,也可以传递参数;
l 注意:字符串的函数名,不能带小括号。
匿名函数
l 没有名字的函数,就是”匿名函数”。
l 匿名函数不能单独定义,也不能单独调用。
l 匿名函数,一般是做为数据,给变量赋值的。
l 匿名函数结束大括号后的分号,不能省略。
PHP开发——函数的更多相关文章
- 开发函数计算的正确姿势 —— 使用 Fun Local 本地运行与调试
前言 首先介绍下在本文出现的几个比较重要的概念: 函数计算(Function Compute): 函数计算是一个事件驱动的服务,通过函数计算,用户无需管理服务器等运行情况,只需编写代码并上传.函数计算 ...
- JMeter 源码二次开发函数示例
JMeter 源码二次开发函数示例 一.JMeter 5.0 版本 实际测试中,依靠jmeter自带的函数已经无法满足我们需求,这个时候就需要二次开发.本次导入的是jmeter 5.0的源码进行实际的 ...
- 3.编写sub过程及开发函数——《Excel VBA 程序开发自学宝典》
3.1 编写sub过程 实例: Sub 建立10个表() If sheets.count>=10 then exit sub Sheets.add , sheets(sheets.count) ...
- 规避Javascript多人开发函数和变量重名问题
函数和变量重名始终是一个令人头痛的问题,先讲变量吧,相信了解JS的朋友都知道,在JS中 是没有块级作用域的只有函数作用域,也就是说那些以大括号为界定符的代码块是管不住其中定义 的变量的作用域的,举例: ...
- php扩展开发-函数
我们首先找到快速上手文章里面关于函数定义的代码,以此说明然后开发PHP的函数 //php_myext.h PHP_FUNCTION(myext_hello);//函数申明,所有在myext.c文件定义 ...
- 开发函数计算的正确姿势 —— 使用 ROS 进行资源编排
前言 首先介绍下在本文出现的几个比较重要的概念: 函数计算(Function Compute): 函数计算是一个事件驱动的服务,通过函数计算,用户无需管理服务器等运行情况,只需编写代码并上传.函数计算 ...
- 开发函数计算的正确姿势——OCR 服务
作者 | 杜万(倚贤) 阿里云技术专家 简介 首先介绍下在本文出现的几个比较重要的概念: OCR(光学字符识别):光学字符识别(Optical Character Recognition, OCR)是 ...
- ios开发函数(数学函数应用)
今天在计算collectionView存放最小间距的时候用到一函数 " ABS " 顺便就查了一下这些数学函数在代码中的使用.. //----------------------- ...
- Python开发——函数【基础】
函数的定义 以下规则 函数代码块以 def 关键词开头,后接函数标识符名称和圆括号(). 任何传入参数和自变量必须放在圆括号中间.圆括号之间可以用于定义参数. 函数的第一行语句可以选择性地使用文档字符 ...
随机推荐
- 20165308实验三 敏捷开发与XP实践实验报告
实验三 敏捷开发与XP实践实验报告 实验目的 安装 alibaba 插件,解决代码中的规范问题.再研究一下Code菜单,找出一项让自己感觉最好用的功能. 在码云上把自己的学习搭档加入自己的项目中,确认 ...
- Maya中提交Nuke工程到deadline中的方法
在之前的一篇文中介绍了在maya中生成nuke工程脚本的方法,后来部门负责人希望更简单一些,能在那个功能面板里提交deadline农场渲染更好,这样就不用打开nuke手动提交了,省去了在两个软件直接来 ...
- 并发之lock的condition接口
13.死磕Java并发-----J.U.C之Condition 12.Condition使用总结 11.Java并发编程系列之十七:Condition接口 === 13.死磕Java并发-----J. ...
- c# 数据结构 ArrayList
数据结构 描述数据之间的关系 行为:添加数据,删除数据,插入数据,查找数据,修改数据 追加数据:向这个结构的末尾添加一个数据 删除数据:在这个结构中删除你指定的数据 插入数据:向这个结构中某一个位置插 ...
- 网络共享存储服务NFS
网络共享存储服务NFS 作者:Eric 微信:loveoracle11g 环境准备 服务器系统 角色 IP RHEL 7.5 x86-64 NFS服务端 192.168.10.201 RHEL 7.5 ...
- 涂抹mysql笔记-mysql字符集
字符集:查看mysql数据库当前都支持哪些字符集:system@(none)>show character set;+----------+--------------------------- ...
- HTML/CSS基础知识(二)
Q:HTML5是什么?为什么要用HTML5?有什么新特性?移除了哪些元素? HTML5是HTML的最新版本,2014年10月由万维网联盟(W3C)完成标准制定.目标是替换1999年制定的HTML4.0 ...
- solr字段压缩属性compressed新版本已经移除
solr字段压缩属性compressed新版本已经移除 可能是考虑到压缩意义不大还减少搜索效率,所以去掉了.而且好像没有替代属性.
- 【产品设计】【转】APP界面设计规范编写指南(人人都是产品经理)
转自 :http://www.woshipm.com/ucd/608557.html 作者:EID_UX_DESIGN,微信公众号:EID_center 原文地址:http://www.ui.cn/d ...
- Ubuntu 14.03 安装jdk
安装python-software-properties $sudo apt-get install python-software-properties $sudo apt-get install ...