PHP魔术方法之__call与__callStatic使用方法


Posted in PHP onJuly 23, 2017

核心代码

//魔术方法__call 
/* 
$method 获得方法名 
$arg 获得方法的参数集合 
*/
class Human {
 private function t(){

 }

 public function __call($method,$arg){
  echo '你想调用我不存在的方法',$method,'方法<br/>'; 
  echo '还传了一个参数<br/>'; 
  echo print_r($arg),'<br/>'; 
 }

 public static function __callStatic($method,$arg){
  echo '你想调用我不存在的',$method,'静态方法<br/>'; 
  echo '还传了一个参数<br/>'; 
  echo print_r($arg),'<br/>'; 
 }
}


$ha = new Human();

//example1
$ha->t(1,2,3);

echo '<br>';
//example2
$ha->say('a','b','c');

echo '<br>';
//example3
$ha::run('d','e','f');

你想调用我不存在的方法t方法
还传了一个参数
Array ( [0] => 1 [1] => 2 [2] => 3 )

你想调用我不存在的方法say方法
还传了一个参数
Array ( [0] => a [1] => b [2] => c )

你想调用我不存在的run静态方法
还传了一个参数
Array ( [0] => d [1] => e [2] => f )

PHP 相关文章推荐
PHP伪造referer实例代码
Sep 20 PHP
PHP下对数组进行排序的函数
Aug 08 PHP
深入extjs与php参数交互的详解
Jun 25 PHP
curl不使用文件存取cookie php使用curl获取cookie示例
Jan 26 PHP
php调用nginx的mod_zip模块打包ZIP文件
Jun 11 PHP
php保存信息到当前Session的方法
Mar 16 PHP
详解PHP序列化反序列化的方法
Oct 27 PHP
PHP程序中的文件锁、互斥锁、读写锁使用技巧解析
Mar 21 PHP
利用PHP自动生成印有用户信息的名片
Aug 01 PHP
PHP实现图片的等比缩放和Logo水印功能示例
May 04 PHP
php实现和c#一致的DES加密解密实例
Jul 24 PHP
Laravel框架实现redis集群的方法分析
Sep 14 PHP
php魔法函数与魔法常量使用介绍
Jul 23 #PHP
php curl上传、下载、https登陆实现代码
Jul 23 #PHP
php类自动装载、链式操作、魔术方法实现代码
Jul 23 #PHP
laravel自定义分页效果
Jul 23 #PHP
PHP批量删除jQuery操作
Jul 23 #PHP
PHP mysqli事务操作常用方法分析
Jul 22 #PHP
PHP实现mysqli批量执行多条语句的方法示例
Jul 22 #PHP
You might like
PHP中上传大体积文件时需要的设置
2006/10/09 PHP
typecho插件编写教程(一):Hello World
2015/05/28 PHP
PHP实现抓取迅雷VIP账号的方法
2015/07/30 PHP
微信自定义菜单的创建/查询/取消php示例代码
2016/08/05 PHP
一个简单安全的PHP验证码类、PHP验证码
2016/09/24 PHP
在子窗口中关闭父窗口的一句代码
2013/10/21 Javascript
jQuery学习笔记之jQuery.extend(),jQuery.fn.extend()分析
2014/06/09 Javascript
DOM基础教程之使用DOM
2015/01/19 Javascript
JavaScript实现将数组数据添加到Select下拉框的方法
2015/08/21 Javascript
关于JS 预解释的相关理解
2016/06/28 Javascript
jQuery自适应轮播图插件Swiper用法示例
2016/08/24 Javascript
初识简单却不失优雅的Vue.js
2016/09/12 Javascript
jQuery在ie6下无法设置select选中的解决方法详解
2016/09/20 Javascript
prototype与__proto__区别详细介绍
2017/01/09 Javascript
Bootstrap 表单验证formValidation 实现表单动态验证功能
2017/05/17 Javascript
Iscrool下拉刷新功能实现方法(推荐)
2017/06/26 Javascript
vue组件父子间通信详解(三)
2017/11/07 Javascript
浅谈React前后端同构防止重复渲染
2018/01/05 Javascript
探秘vue-rx 2.0(推荐)
2018/09/21 Javascript
JS错误处理与调试操作实例分析
2020/04/13 Javascript
Python tempfile模块学习笔记(临时文件)
2014/05/25 Python
python简单实现获取当前时间
2016/08/27 Python
python numpy格式化打印的实例
2018/05/14 Python
python实现文件批量编码转换及注意事项
2019/10/14 Python
Python3.7 基于 pycryptodome 的AES加密解密、RSA加密解密、加签验签
2019/12/04 Python
Python.append()与Python.expand()用法详解
2019/12/18 Python
localStorage的过期时间设置的方法详解
2018/11/26 HTML / CSS
canvas如何实现多张图片编辑的图片编辑器
2020/03/10 HTML / CSS
亚马逊新加坡官方网站:Amazon.sg
2020/03/25 全球购物
外贸员简历中的自我评价
2014/03/04 职场文书
《九寨沟》教学反思
2014/04/08 职场文书
基层党员群众路线整改措施及努力方向
2014/10/28 职场文书
公司开除员工通知
2015/04/22 职场文书
教师反邪教心得体会
2016/01/15 职场文书
讲解Python实例练习逆序输出字符串
2022/05/06 Python
vue @ ~ 相对路径 路径别名设置方式
2022/06/05 Vue.js