php函数
回调函数
回调函数只是变量函数的一个变形,本质上还是变量函数的应用.
在一个函数(A函数)中,通过变量函数的方式$var(),调用另外一个函数(B函数、c函数),而其函数名通过A函数的参数传递进来的,这种方式就是回调函数,因为函数A中的变量函数$var(),会根据用户传入不同的实参,回过头调用不同名称的其他函数(B函数,C函数)
格式:
function A($var){ $var();//回调函数要素1:变量函数 } A('B')//回调函数要素2:传入函数名称字符串
额外:
array_filter(数组变量[,回调函数]); /*有回调函数,数组变量再回调函数执行一遍如果返回false,则删除元素;返回true,则保留 *没有回调函数,则数组变量为false则删除元素 */
内部函数
在函数内部声明的函数,在函数外部不可以直接调用,但是如果调用外部函数之后,就可以任意调用内部函数;
在函数内部可以直接调用内部函数,但是必须在内部函数定义之后调用;
内部函数就是帮助外部函数完成一些子功能
递归函数
在一个函数中调用当前函数本身, 这种函数格式就是递归函数.
匿名函数
没有名字的函数就是匿名函数
如果声明一个函数,而改函数没有函数名,那么这个函数就是匿名函数.
用法:用变量接受匿名函数
变量名=function(){ 函数体 };(注意:这里必须有分号,这是表达式)匿名函数的高级应用
格式:调用函数(匿名函数)
回调函数的区别:
1.以字符串方式传入的回调函数
2.以匿名的方式传入的回调函数
3.字符串范式传入的回调函数,该函数可以使用多次,任意调用,因为这是一个预先加载的普通函数.而匿名函数方式传入的回调函数,只可以在当前回电函数中使用,其他地方无法使用.
4.匿名函数的回调函数方式效率较高,回调函数运行完毕,匿名函数既被回收.而字符串传入的函数由于是预先加载的普通函数,所以在页面没有执行完毕时,永不消失
可变长度参数列表
在函数中,实参的实际传入个数允许操作形参的个数,在此情况下如果想获取所有传入的实参,可以使用函数func_get_args()在函数的内部来获取所有实参组成的数组.
func_get_args();'//获取所有的实参值,返回一个数组,仅能在函数内部使用;
常规函数
- bool copy(string $source,string $dest)
- 带有mixed的函数,表示可以传任何类型的数据变量或者值都可以
- eg:bool chown(string $filname,mixed $user)
- 带有&符的参数的函数,表示这个参数不能传数值,只能传一个变量,函数中将变量的值改变,我们在使用这个变量的时候变化的.
- eg: bool sort(array &$array [, int $sort_flags=SORT_REGULAR])
- 带[]函数,表示这个参数是可选的,如果你传值了就用你传的值,如果没有传值,就使用默认值也叫默认函数
- 带有...的参数函数,表示可以传任意多个参数
- eg: int array_unshift(array &$array,mixed $var [,mixed $…..])
- 带有callback参数的函数.表示这个位置需要传入一个函数名称字符串或者匿名函数做回调使用
文件包含
- include
- 作用:相当于将文件的内容复制到指定的文件当中
- 常用于包含函数库文件或者配置文件.但是任何php文件都可以包含.
- 包含文件如果失败,提示warning级别错误,后续代码可以继续执行
- require
- 作用:将一个文件请求到另一个文件中.
- 包含文件失败,提示error级别错误,后续不能继续执行
- include_once
- 作用:相当于将文件的内容复制到指定的文件中,但是如果文件已经包含过,将不再包含,返回true值
- include_once效率低于include.因为include_once需要判断.
- include包含文件成功,返回数值整型,但是include_once第一次包含文件返回1,以后再包含相同文件则返回ture;
- require_once
posted on 2018-04-28 09:30 nothingMan 阅读(112) 评论(0) 收藏 举报
浙公网安备 33010602011771号