PHP:ReflectionClass


 一、簡介

反射API的整體類結構如下:

Reflector                                  ;反射接口,反射類需要實現的功能
Reflection                                ;基礎反射操作類

ReflectionZendExtension        ;Zend引擎擴展反射類
ReflectionExtension                ;普通擴展反射類

ReflectionFunctionAbstract     ;方法和函數的抽象反射類
ReflectionFunction                  ;函數反射類

ReflectionParameter               ;方法和函數的參數反射類型
ReflectionClass                       ;類反射類
ReflectionObject                      ;對象反射類

ReflectionMethod                    ;類方法反射類
ReflctionProperty                    ;類屬性反射類

ReflectionClass                       ;類報告了一個類的有關信息

ReflectionException                ;類繼承Exception

二、常用函數

三、例子

<?php
namespace app\abstractfactory\controller;

use ReflectionClass;
use ReflectionException;

class AbstractFactoryTest
{
    public $namespace = '\app\abstractfactory\controller\\';

    public function test()
    {
        $aClassName = $this->namespace . aClass;
        try {
            //$aClassName作為參數,傳給ReflectionClass的構造函數
            //在嘗試賦值的時候會拋出 ReflectionException
            $a_class = new ReflectionClass($meatClassName);
        
            //實例化類
            $a_Obj = $a_class->newInstance();

        } catch (\ReflectionException $e) {
            return $e->getMessage();
        }
        echo $a_Obj ->buy();
    }
}


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM