可我浪费着我寒冷的年华

跟着百度学PHP[5]函数篇2-PHP中的特殊形式的函数

目录......................................................

.00x1 可变函数

在PHP里面如果说将“函数名称”赋予字符串类型的变量。在调用这个变量的时候如果使用带有小括号,那么PHP就会将该作为函数解析。这就叫可变函数。
注:可变函数不可以用于echo,print,unset(),isset(),empty(),include,require以及类似的语言结构,需要自己封装以后实现。

.00x2 回调函数

在一个函数1中调用另一个函数2的时候,将一个函数2当做参数传进去,并且在函数1中使用。

.00x3 匿名函数

 顾简单的说就是没有函数名的,但是需要注意在大括号的后面也还要再加一个分号。

.00x递归函数的使用

函数体自己调用自己。 

...........................................................

 

 

00x1 可变函数的使用
  在PHP里面如果说将“函数名称”赋予字符串类型的变量。在调用这个变量的时候如果使用带有小括号,那么PHP就会将该作为函数解析。这就叫可变函数。
  注:可变函数不可以用于echo,print,unset(),isset(),empty(),include,require以及类似的语言结构,需要自己封装以后实现。

<?php 
$a = 'md5';
echo $a('hello world');
echo "<br />";
echo md5('hello world');
 ?>
/*
输出效果如下所示:
5eb63bbbe01eeed093cb22bb8f5acdc3
5eb63bbbe01eeed093cb22bb8f5acdc3
*/

00x2 回调函数的使用

在一个函数1中调用另一个函数2的时候,将一个函数2当做参数传进去,并且在函数1中使用。

单个函数参数案例:

<?php 
function play(){
    echo "playing...<br />";
}
function study(){
    echo "studying...<br />";
}
function sing(){
    echo "singing...<br />";
}
function DoWhat($x){
    echo "she ";
    echo $x();
}
DoWhat('play');
 ?>
/*输出结果如下所示:
she playing...
*/

多个函数参数案例:

<?php 
function study($username){
    echo $username." studying...<br />";
}
function play($username){
    echo $username." playing...<br />";
}
function eat($username){
    echo $username." eating...<br />";
}
function DoWhat($functionName,$param){ #可以理解成eat就是$functionname参数,$param就是eat函数里的$username参数。
    $functionName($param);
}
DoWhat('play',"望大牛");
 ?>

使用回调函数实现加减运算:

<?php 
/*
使用回调函数实现加减操作
 */
function jiafa($x,$y){
    return $x + $y;
}
function jianfa($x,$y){
    return $x - $y;
}
function jiajian($suanfa,$q,$w){
    return $suanfa($q,$w);
}
echo jiajian('jianfa','2','3');
 ?>

00x3 匿名函数的使用

 顾简单的说就是没有函数名的,但是需要注意在大括号的后面也还要再加一个分号。如下所示:

<?php 
$a = function(){ #再次处声明一个函数,并未声明函数名
    return "hello world";
}; #记住这里要加一个分好!
echo $a(); #输出的时候输出的是变量加括号。
/**
 * 输出效果如下所示:
 * hello world
 */

还有一种声明匿名函数的方法;

<?php 
$a = create_function('$x,$y', 'return $x + $y;'); #第一个参数是抽象参数,第二个是要执行的php语句。切记,后面的分号
echo $a(1,2);#也切记这里的参数要加上去。
/**
 * 输出效果如下所示:
 * 3
 */

00x递归函数的使用

函数体自己调用自己。 

<?php 
function test($x){
    echo $x."<br />"; #首先先输出$x
    --$x;             #让$x减一
    if($x>=0){        #如果$x大于等于0执行语句中的
        test($x);     #$x再次执行一下。这时候$x已经变成4了
}
echo test(5);
/*
输出效果如下所示
5
4
3
2
1
0
 */

 

posted @ 2016-12-28 20:10  珍惜少年时  阅读(227)  评论(0编辑  收藏  举报
可我浪费着我寒冷的年华