phppackage / magic-class

一个神奇的PHP类

v1.0.2 2018-02-08 11:23 UTC

This package is not auto-updated.

Last update: 2024-09-24 04:04:52 UTC


README

Build Status StyleCI Scrutinizer Code Quality Code Coverage Packagist Version Packagist Downloads

一个神奇的PHP类,它可以被当作数组或对象来处理,并且可以转换为json格式。

安装

使用以下命令通过composer安装此包

$ composer require phppackage/magic-class

使用示例

<?php
require 'vendor/autoload.php';
//
use PHPPackage\MagicClass;

// pre-initialize with constructor arguments
$magicClass = new MagicClass('some value');

// access as array or object
echo $magicClass[0]   // some value
echo $magicClass->{0} // some value

// an empty instance
$magicClass = new MagicClass();

// add values
$magicClass['foo'] = 'BarBaz';

// access as array or object
echo $magicClass['foo']; // BarBaz
echo $magicClass->foo;   // BarBaz

// variables can be invoked
$magicClass->object = new class {
    private $foo = 'BarBaz';

    public function getFoo()
    {
        return $this->foo;
    }
};
echo $magicClass('object')->getFoo(); // BarBaz

// toString dumps to json
$magicClass['foo'] = 'BarBaz';

echo strval($magicClass); // {"foo": "BarBaz"}

// count elements
echo count($magicClass) // 1

// var_dump/print_r clean output
print_r($magicClass);

PHPPackage\MagicClass Object
(
    [string] => BarBaz
)

测试

$ composer test

贡献

请参阅CONTRIBUTING以获取详细信息。

致谢

许可证

MIT许可证(MIT)。请参阅许可证文件获取更多信息。