zoukankan      html  css  js  c++  java
  • PHP中的反射

    PHP中的反射

    PHP5 具有完整的反射 API,添加了对类、接口、函数、方法和扩展进行反向工程的能力。 此外,反射 API 提供了方法来取出函数、类和方法中的文档注释。
    请注意部分内部 API 丢失了反射扩展工作所需的代码。 例如,一个内置的 PHP 类可能丢失了反射属性的数据。这些少数的情况被认为是错误,不过, 正因为如此,它们应该被发现和修复。

    <?php
    /**
    * Created by PhpStorm.
    * User: bravo
    * Date: 2016/6/30
    * Time: 14:11
    */
    
    namespace ex11;
    /*
    * @package oop1
    * @property ex10person
    * @auther bravo
    */
    class person
    {
        public $name;
        public $gender;
    
        public function say()
        {
            echo $this->name," is ", $this->gender;
        }
    
        public function __set($name, $value)
        {
            echo "setting $name to $value
    ";
            echo $this->name=$value;
        }
        public function __get($name)
        {
            if(!isset($name))
            {
                echo "未设置";
                $this->name="正在设置";
            }
    
            return $this->name;
        }
    
    }
    $stu=new person();
    $stu->name='Lucy';
    $stu->gender='female';
    $stu->say();
    echo "
    ";
    
    $reflect=new ReflectionObject($stu);
    $props = $reflect->getProperties();
    echo "properties of stu are:
    ";
    foreach($props as $prop)
    {
        print $prop->getName()."
    ";
    }
    $methods = $reflect->getMethods();
    echo "properties of stu are:
    ";
    foreach($methods as $method)
    {
        print $method->getName()."
    ";
    }
  • 相关阅读:
    FZU 2129 子序列个数(DP)题解
    FZU 2082 过路费(树链剖分 边权)题解
    2019牛客多校第一场E ABBA(DP)题解
    ajax解决csrf的跨站请求伪造
    django实现简单的跨域请求数据
    python 与jQuery之间的接口对应
    GO语言的初次学习
    Django一些常用参数的设置
    auth认证模块
    Django中间件模块的使用
  • 原文地址:https://www.cnblogs.com/enjoy233/p/10408779.html
Copyright © 2011-2022 走看看