魔术方法__call()实例详解(php面向对象高级教程)

巴扎黑
Lepaskan: 2023-03-07 14:54:01
asal
2141 orang telah melayarinya

什么是__call()魔术方法?

 __call是魔术方法中的一个,当程序调用到当前类中未声明或没权限调用的方法时,就会调用__call方法。__call()方法包含两个参数,即方法名和方法参数。其中,方法参数是以数组形式存在的。

下面我们举个简单的例子帮助大家理解:

<?php
header("content-type:text/html;charset=utf-8");
class Sport{
public function run(){
echo &#39;方法存在直接调用我&#39;;
}
function __call($name, $arguments)
{
echo &#39;方法不存在调用我&#39;;
echo &#39;<br/>&#39;;
echo &#39;方法名为:&#39;. $name;
echo &#39;<br/>&#39;;
echo &#39;参数为:<pre class="brush:php;toolbar:false">&#39;;
var_dump($arguments);
}
}
$sport = new Sport();
$sport ->run();
echo &#39;<br/>&#39;;
$sport ->football(&#39;贝克汉姆&#39;,30);
Salin selepas log masuk

我们创建一个类,在类中创建一个run方法和魔术方法__call()。接着,我们实例化对象$sport调用两个方法,一个是在类中存在的run()方法,一个是不存在的football()方法。大家可以运行代码查看结果。

Atas ialah kandungan terperinci 魔术方法__call()实例详解(php面向对象高级教程). Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!