Detailed explanation of how to call user-defined function instances in PHP

伊谢尔伦
Release: 2023-03-11 12:50:01
Original
1442 people have browsed it

The following is a detailed analysis and introduction to the method of calling user-defined functions in php. Friends who need it can come and refer to it

Let’s put an example first:
The call_user_func function is similar to a special method of calling a function. The usage method is as follows:

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

It is strange to call the method inside the class. It actually uses

array. I don’t know how the developers thought about it. Of course, new is omitted, which is also full of novelty:

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

The call_user_func_array function is very similar to call_user_func, except that the parameters are passed in a different way, so that the parameters The structure is clearer:

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

The call_user_func_array function can also call methods inside the class

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

Both the call_user_func function and the call_user_func_array function support

references, which makes them similar to ordinary functions The calls tend to have consistent functions:

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

Another: both the call_user_func function and the call_user_func_array function support references.

<?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


The above is the detailed content of Detailed explanation of how to call user-defined function instances in PHP. For more information, please follow other related articles on the PHP Chinese website!

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 Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template