魔术方法__call()实例详解(php面向对象高级教程)
Apr 18, 2017 pm 06:16 PM什么是__call()魔术方法?
__call是魔术方法中的一个,当程序调用到当前类中未声明或没权限调用的方法时,就会调用__call方法。__call()方法包含两个参数,即方法名和方法参数。其中,方法参数是以数组形式存在的。
下面我们举个简单的例子帮助大家理解:
<?php header("content-type:text/html;charset=utf-8"); class Sport{ public function run(){ echo '方法存在直接调用我'; } function __call($name, $arguments) { echo '方法不存在调用我'; echo '<br/>'; echo '方法名为:'. $name; echo '<br/>'; echo '参数为:<pre>'; var_dump($arguments); } } $sport = new Sport(); $sport ->run(); echo '<br/>'; $sport ->football('贝克汉姆',30);
我们创建一个类,在类中创建一个run方法和魔术方法__call()。接着,我们实例化对象$sport调用两个方法,一个是在类中存在的run()方法,一个是不存在的football()方法。大家可以运行代码查看结果。
Atas ialah kandungan terperinci 魔术方法__call()实例详解(php面向对象高级教程). Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Artikel Panas

Alat panas Tag

Artikel Panas

Tag artikel panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Cara melaksanakan pengaturcaraan dipacu peristiwa berorientasikan objek menggunakan bahasa Go

Apakah kepentingan anotasi @JsonIdentityInfo menggunakan Jackson di Jawa?

Ciri Lanjutan PHP: Amalan Terbaik dalam Pengaturcaraan Berorientasikan Objek

Terokai pengaturcaraan berorientasikan objek dalam Go

Menganalisis Corak Flyweight dalam Pengaturcaraan Berorientasikan Objek PHP

Analisis ciri berorientasikan objek bahasa Go

Perkongsian pengalaman pembangunan C#: pengaturcaraan berorientasikan objek dan prinsip reka bentuk

Adakah terdapat ciri berorientasikan objek seperti kelas di Golang?
