ivastly/php-reflection

PHP 反射 API 简化版。

1.0.0 2021-02-14 12:57 UTC

This package is auto-updated.

Last update: 2024-09-17 04:24:31 UTC


README

build status

理由

你是否曾经质疑过自己为什么需要写超过一行代码来获取私有属性的值?如果属性是私有且在父类中定义,则需要更多的努力。现在欢迎一个库来解决这个麻烦。

功能

  • 通过单个调用读取对象中任何属性的值,包括父类。
  • 通过单个调用找出属性的可见性,包括父类。
  • 检查类中是否存在属性。

安装

composer require ivastly/php-reflection

使用方法

class ParentClass {
    private $property = 'parent private property';
}

class C extends ParentClass {

}

$object = new C();
$reflection = new \Ivastly\PhpReflection\Reflection();

$value = $reflection->getProperty($object, 'property');
$visibility = $reflection->getVisibility($object, 'property');

echo "$visibility \$property = '$value;'\n"; // private $property = 'parent private property';

查看 example.php

测试

make test

代码覆盖率 🟩

coverage is 100%

许可证

查看 LICENSE.md

贡献

查看 CONTRIBUTING.md