Home > Backend Development > PHP Tutorial > PHP dynamically executes class methods with parameters_PHP tutorial

PHP dynamically executes class methods with parameters_PHP tutorial

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
Release: 2016-07-21 15:47:01
Original
887 people have browsed it

The official manual gives the following example:

Copy code The code is as follows:

// Use Example of NameSpace
namespace Foobar;
class Foo {
static public function test() {
print "Hello world!n";
}
}
call_user_func( __NAMESPACE__ .'Foo::test'); // As of PHP 5.3.0
// Hello world!
call_user_func(array(__NAMESPACE__ .'Foo', 'test')); // As of PHP 5.3.0
// Hello world!
?>

Copy code The code is as follows:

// Example of direct method calling
class myclass {
static function say_hello()
{
echo "Hello!n";
}
}
$classname = "myclass";
call_user_func(array($classname, 'say_hello'));
call_user_func($classname .'::say_hello'); // As of 5.2.3
?>

So, what if it is an ordinary method and the method has parameters?
The following is a small example written by the author for reference:
Copy the code The code is as follows:

//Execute the class with parameters
class Loveapple{
public function sayHello($a, $b){
echo "Hello:".$a.". " .$b."n";

}
}
$obj = new Loveapple();
//Execution result Hello: loveapple. Using instance.
call_user_func(array ($obj, "sayHello"), "loveapple", "Using instance.");
//Execution result Hello:loveapple. Using class name.
call_user_func(array("Loveapple", "sayHello") , "loveapple", "Using class name.");
?>

www.bkjia.comtruehttp: //www.bkjia.com/PHPjc/320023.htmlTechArticleThe official manual gives the following example: Copy the code as follows: ?php // Example using NameSpace namespace Foobar ; class Foo { static public function test() { print "Hello world!...
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
Latest Issues
php data acquisition?
From 1970-01-01 08:00:00
0
0
0
PHP extension intl
From 1970-01-01 08:00:00
0
0
0
How to learn php well
From 1970-01-01 08:00:00
0
0
0
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template