php深入学习笔记二( 函数内置函数 )

1. call_?user_?func_?array

调用用户自定义函数,第一个参数是函数名,

第二个参数是函数的参数 必须是是一索引数组

function foobar($arg, $arg2) {
    echo __FUNCTION__, " got $arg and $arg2\n";
}
class foo {
    function bar($arg, $arg2) {
        echo __METHOD__, " got $arg and $arg2\n";
    }
}

// 普通函数调用
call_user_func_array("foobar", array("one", "two"));

// 类成员函数调用
$foo = new foo;
call_user_func_array(array($foo, "bar"), array("three", "four"));

2. call_?user_?func

调用函数 参数不能传递引用 参数

call_user_func(函数名,参数1,参数2...)

call_user_func(function($arg) { print "[$arg]\n"; }, 'test');

3. create_?function

创建一个匿名函数

$myfunc = create_?function(‘函数参数‘,‘函数体‘);

$myfunc(函数参数);

$newfunc = create_function('$a,$b', 'return "ln($a) + ln($b) = " . log($a * $b);');
echo "New anonymous function: $newfunc\n";
echo $newfunc(2, M_E) . "\n";

4. forward_?static_?call_?array

调用一个静态函数 方式同 call_user_func_array

5. forward_?static_?call

调用一个静态函数 方式同 call_user_func

6. func_?get_?arg(index)

返回参数列表的某一项 参数为索引值

7. func_?get_?args

以数组形式收集所有参数

<?php
function sum() {
    $acc = 0;
    foreach (func_get_args() as $n) {
        $acc += $n;
    }
    return $acc;
}

echo sum(1, 2, 3, 4);
?>

8. func_?num_?args()

返回函数传递参数的个数

9. function_?exists

检测函数是否存在

function_?exists("函数名"); // 检测一个函数是否存在

10. get_?defined_?functions

以二维数组形式返回所有定义过的函数

包括系统函数    (internal)

和用户自定义函数(user)

Array
(
    [internal] => Array
        (
            [0] => zend_version
            [1] => func_num_args
            [2] => func_get_arg
            [3] => func_get_args
            [4] => strlen
            [5] => strcmp
            [6] => strncmp
            ...
            [750] => bcscale
            [751] => bccomp
        )

    [user] => Array
        (
            [0] => myrow
        )

)

11. register_?shutdown_?function

该函数注册的函数 ,在系统执行超过最大时间Fatal error时

仍会执行 注册的函数

 function add(){
    code here...
 }
 register_?shutdown_?function("add");

时间: 2024-10-03 23:16:36

php深入学习笔记二( 函数内置函数 )的相关文章

MySQL学习笔记_7_MySQL常用内置函数

 MySQL常用内置函数 说明: 1)可以用在SELECT/UPDATE/DELETE中,及where,orderby,having中 2)在函数里将字段名作为参数,变量的值就是字段所对应的每一行的值. 3)在程序设计语言如C++中提供的函数,MySQL大部分也提供了,关于MySQL函数的完整信息,请参阅<MySQL参考手册> 一.字符串函数[比较常用,需要掌握] 1. concat(s1,s2,...,sn) #把传入的参数连接成一个字符串 selectconcat('abc','def

Python 学习笔记 -- time模块内置函数及实例

1 import time 2 #时间戳:1970.1.1.08:00:00起到现在的总秒数 3 #-----------------------------Time模块内置函数----------------------------- 4 #time.altzone #返回格林威治西部的夏令时地区的偏移秒数 5 print("夏令时区的偏移秒数:time.altzone %d " % time.altzone) 6 7 print("\n-----------------分

python学习笔记六:内置函数

一.数学相关 1.绝对值:abs(-1) 2.最大最小值:max([1,2,3]).min([1,2,3]) 3.序列长度:len('abc').len([1,2,3]).len((1,2,3)) 4.取模:divmod(5,2)//(2,1) 5.乘方:pow(2,3,4)//2**3/4 6.浮点数:round(1)//1.0 二.功能相关 1.函数是否可调用:callable(funcname),注意,funcname变量要定义过 2.类型判断:isinstance(x,list/int)

学习13.内容# 1.内置函数二 # 2.闭包

目录 内置函数二 重要的内置函数和匿名函数 闭包 内置函数二 abs 绝对值 返回的都是正数 print([abd(i) for i in lst]) enumerate 枚举 ("可迭代对象","序号的起始值") 默认起始值是0 [(0,1),(1,2),(2,3)] print([i for i in enumerate(lst,10)]) lst = [11,22,33,-44,23,21] new_lst = [] for i in enumerate(ls

学习python的第十七天(二分法,有名函数,匿名函数,内置函数)

06.04 学习总结 一.二分法 二分法个人理解是一种算法的方式在一个有序的序列,区中间值,把中间值与想要的值进行对比从而一次一次的减少搜索范围举例 #给与一个列表1-100, num_list = [num fornum in range(1,101)] #给予一个num让你在列表中寻找他 mid_num_index = int(len(num_list)/2) mid_num = num_list[mid_num_index] if len(num_list)==1: if num_list

python之路基础-(二)内置函数、函数、装饰器

内置函数 python内置了以下函数,可以根据情况来使用 一.数学相关函数 divmod():取商和余数 >>> divmod(99,10) (9, 9) abs():取绝对值 >>> abs(-10) 10 len():查看序列长度 >>>list = [11,22,33,44] >>>r = len(list) >>>print(r)4 二.功能相关函数chr():在ascii码表中根据数字找出对应的字母 >

python学习之路-4 内置函数和装饰器

本篇涉及内容 内置函数 装饰器 内置函数 callable()   判断对象是否可以被调用,返回一个布尔值 1 2 3 4 5 6 7 8 9 10 11 num = 10 print(callable(num))   # num不能够被调用,返回False    def f1():     print("name")    print(callable(f1))     # f1可以被调用,返回True    # 输出 False True ?chr()   将十进制整数转换为asc

Python学习(五)函数 —— 内置函数 lambda filter map reduce

Python 内置函数 lambda.filter.map.reduce Python 内置了一些比较特殊且实用的函数,使用这些能使你的代码简洁而易读. 下面对 Python 的 lambda.filter.map.reduce 进行初步的学习. lambda 匿名函数 lambda语句中,冒号前是参数,可以有多个,用逗号隔开,冒号右边的返回值. lambda语句构建的其实是一个函数对象,参考下例来感受下 lambda 匿名函数: 1 def f(i): # 用户自定义返回平方数 2 retur

python基础学习4-函数、内置函数、os模块、time模块

  1       函数 1.1     字符串格式化方法 Python中字符串格式化输出的几种方法: https://www.cnblogs.com/hongzejun/p/7670923.html 字符串格式化另外一种方式format方式 #字符串format()方法 #第一种 import datetime msg = '欢迎光临{name},今天的日期是{today}' msg = msg.format(name = 'zhangsan',today = datetime.datetim

python笔记-5(内置函数)

一.内置函数 1.abs()--取绝对值函数 print(abs(-0.11)) x=-0.01 y=0.11 print(abs(x),abs(y)) ------------------------------ 0.11 0.01 0.11 2.all()--判断可迭代对象内是否有0或false或元素为空 all(iterable)如果非可迭代对象,则会报错 >>> all(123) Traceback (most recent call last): File "<