美文网首页
PHP反射与接口

PHP反射与接口

作者: 罟宁 | 来源:发表于2016-10-20 14:10 被阅读0次

反射

1、概念

反射指在PHP运行状态中,扩展分析PHP程序,导出或提取出相关类、方法、属性、参数等的详细信息,包括注释

2、使用

3、反射的作用

用于文档生成、动态代理(proxy.php)

<?php
class mysql {
    public function connect($db) {
        echo "链接到数据库".$db[0];
    }
}
class sqlproxy {
    private $target;
    function __construct($tar) {
        $this->target[] = new $tar();
    }
    function __call($name, $args) {
        foreach ($this->target as $obj) {
            $r = new ReflectionClass($obj);
            //echo $r->getMethod($name),"<br/>";
            if ($method = $r->getMethod($name)) {
                //echo $method->isPublic(),"<br/>";
                //var_dump ($method->isAbstract(),"<br/>");
                if ($method->isPublic() && !$method->isAbstract()) {
                    echo "方法前拦截记录LOG","<br/>";
                    $method->invoke($obj, $args);
                    echo "方法后拦截","<br/>";
                }
            }
        }
    }
}
$obj = new sqlproxy('mysql');
$obj -> connect('member');

面向接口编程

1、 概念:

  • 狭义:interface
  • 广义:任何一个对外服务的接口

2、接口的作用

  • 对于实现接口的所有类,必须实现接口的全部方法
  • 接口为抽象而生
  • 接口===强制规范和契约
  • java中认为接口就是一种类型(type)

3、总结

  • 接口作为一种规范和契约存在。作为规范,接口应该保证可用性;作为契约,接口应该保证可控性
  • 接口只是一个声明,一旦使用interface关键字,就应该实现它。由程序员实现的接口叫外部接口,由系统实现的接口叫内部接口
  • PHP接口的两个不足:1、没有契约限制; 2、缺少足够多的内部接口

相关文章

  • PHP反射与接口

    反射 1、概念 反射指在PHP运行状态中,扩展分析PHP程序,导出或提取出相关类、方法、属性、参数等的详细信息,包...

  • PHP的反射类ReflectionClass、Reflectio

    PHP5 具有完整的反射API,添加对类、接口、函数、方法和扩展进行反向工程的能力。 反射是什么? 它是指在PHP...

  • PHP Reflection 反射

    反射 ReflectionClass 类 PHP反射机制 反射在 PHP 中的应用

  • go接口与反射

    go语言的interface是个很松散的概念,类型不必明确声明实现了接口,go语言通过内部维护一个实现此接口方法的...

  • mysql,mysqli,PDO介绍

    PHP与MySQL的连接有三种API接口,分别是:PHP的MySQL扩展 、PHP的mysqli扩展 、PHP数据...

  • 一帖让PHP小白彻底了解PDO操作数据库的方法

    php与mysql的连接有三种API接口,分别是:PHP的MySQL扩展 、PHP的mysqli扩展 、PHP数据...

  • php反射实现Ioc/Di及注解

    ​ PHP5之后提供了完整的反射API,添加了对类、接口、函数、方法和扩展进行反向工程的能力。此外,反...

  • PHP Redis5.0 原型

    PHP反射类 : 输出 :

  • 第12章 元编程与注解、反射

    第12章 元编程与注解、反射 反射(Reflection)是在运行时获取类的函数(方法)、属性、父类、接口、注解...

  • PHP开发api接口安全验证

    php的api接口 在实际工作中,使用PHP写api接口是经常做的,PHP写好接口后,前台就可以通过链接获取接口提...

网友评论

      本文标题:PHP反射与接口

      本文链接:https://www.haomeiwen.com/subject/olvfuttx.html