Home > php教程 > php手册 > body text

php中如何调用用户自定义的函数(实例详解)

WBOY
Release: 2018-10-25 15:48:49
Original
1201 people have browsed it

以下是对php中调用用户自定义函数的方法进行了详细的分析介绍,需要的朋友可以过来参考下

先放上来别人的例子吧:

call_user_func函数类似于一种特别的调用函数的方法,使用方法如下:   

代码如下:

function a($b,$c)    
{    
echo $b;    
echo $c;    
}    
call_user_func('a', "111","222");    
call_user_func('a', "333","444");    
//显示 111 222 333 444    
?>
Copy after login

调用类内部的方法比较奇怪,居然用的是array,不知道开发者是如何考虑的,当然省去了new,也是满有新意的:

代码如下:

class a {    
function b($c)    
{    
echo $c;    
}    
}    
call_user_func(array("a", "b"),"111");    
//显示 111    
?>
Copy after login

call_user_func_array函数和call_user_func很相似,只不过是换了一种方式传递了参数,让参数的结构更清晰:

代码如下:

function a($b, $c)    
{    
echo $b;    
echo $c;    
}    
call_user_func_array('a', array("111", "222"));    
//显示 111 222    
?>
Copy after login

call_user_func_array函数也可以调用类内部的方法的

代码如下:

Class ClassA    
{    
function bc($b, $c) {    
     $bc = $b + $c;    
echo $bc;    
}    
}    
call_user_func_array(array('ClassA','bc'), array("111", "222"));    
//显示 333    
?>
Copy after login

call_user_func函数和call_user_func_array函数都支持引用,这让他们和普通的函数调用更趋于功能一致:

代码如下:

function a($b)    
{    
$b++;    
}    
$c = 0;    
call_user_func('a', $c);    
echo $c;//显示 1    
call_user_func_array('a', array($c));    
echo $c;//显示 2
Copy after login

另:call_user_func函数和call_user_func_array函数都支持引用。

代码如下:

<?php
function increment(&$var)
{
    $var++;
}
$a = 0;
call_user_func(&#39;increment&#39;, $a);
echo $a; // 0
call_user_func_array(&#39;increment&#39;, array(&$a)); // You can use this instead
echo $a; // 1
?>
Copy after login

【相关教程推荐】

1. php编程从入门到精通全套视频教程 

2. php从入门到精通  

3. bootstrap教程 

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Recommendations
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
About us Disclaimer Sitemap
php.cn:Public welfare online PHP training,Help PHP learners grow quickly!