mnapoli/number-two

此包已被放弃,不再维护。未建议替代包。

NumberTwo是一款优雅的变量展示器

1.0.0 2013-07-25 07:47 UTC

This package is auto-updated.

Last update: 2020-01-19 10:35:00 UTC


README

NumberTwo是一款优雅的变量展示器。

Build Status

当使用var_dumpprint_r时过于冗长或难以阅读时,请使用NumberTwo。

标量

echo NumberTwo::dump(null);
// null

echo NumberTwo::dump(true);
// true
echo NumberTwo::dump(false);
// false

echo NumberTwo::dump(1);
// 1

echo NumberTwo::dump('foo');
// "foo"

数组

echo NumberTwo::dump(array('foo', 'bar'));
[
    0 => "foo"
    1 => "bar"
]
echo NumberTwo::dump(array('foo' => 'bar'));
[
    "foo" => "bar"
]

对象

echo NumberTwo::dump($object);
My\ClassWithPublicProperties {
    foo: "aaa"
    bar: "bbb"
}

您可以配置递归深度

echo NumberTwo::dump($otherObject, 2);
UnitTest\NumberTwo\PublicProperties {
    foo: UnitTest\NumberTwo\PublicProperties {
        foo: UnitTest\NumberTwo\PrivateProperties { ... }
        bar: null
    }
    bar: null
}

过滤器

您可能需要预处理将要展示的对象。

为此,您可以使用过滤器

$filters = array(new MyFilter());

echo NumberTwo::dump($otherObject, 2, $filters);

Doctrine 集合

NumberTwo为Doctrine的集合提供了过滤器

use NumberTwo\Filter\DoctrineCollectionFilter;

$filters = array(new DoctrineCollectionFilter());

echo NumberTwo::dump($otherObject, 2, $filters);

此过滤器将任何集合(ArrayCollection、PersistentCollection等)转换为PHP数组(使用toArray()方法)。

Doctrine 代理

NumberTwo为Doctrine的代理提供了过滤器

use NumberTwo\Filter\DoctrineProxyFilter;

$filters = array(new DoctrineProxyFilter());

echo NumberTwo::dump($otherObject, 2, $filters);

此过滤器将加载未初始化的代理并清理属性。

请随时通过拉取请求提交其他过滤器。

许可证

NumberTwo遵循MIT许可证。