reverse print r
ve composer.lock ?
该库提供了六个不同的处理程序,用于将PHP的print_r函数的输出倒回原始变量。如果没有类型的处理程序可用,则返回为string 。
string"" )被视为null (请参阅NullHandler )boolean支持)array必须通过类型铸造支持public , protected和private特性必须通过类型铸造来支持包装可通过作曲家获得。
composer require simivar/reverse-print-r
<?php
$ print_r_output = print_r ([
' string ' => ' some text ' ,
' integer ' => 1 ,
' float ' => 2.3 ,
' subArray ' => [
' Hello World. ' ,
],
], true );
$ reverser = new ReversePrintR ReversePrintR ( $ print_r_output );
echo $ reverser -> reverse ()[ ' float ' ];
// outputs "2.3" 所有处理程序均定义为final ,但是由于依赖注入,它很容易更改库的行为及其类型铸造。假设您想保留所有空字符串""为字符串,而不是null 。您所要做的就是在没有NullHandler情况下创建自己的HandlerRunner 。
<?php
$ print_r_output = print_r ([
' string ' => '' ,
' null ' => null ,
], true );
$ handlerRunner = new ReversePrintR HandlerRunner (
new ReversePrintR Handler FloatHandler (),
new ReversePrintR Handler IntegerHandler (),
new ReversePrintR Handler ArrayHandler (),
new ReversePrintR Handler ObjectHandler ()
);
$ reverser = new ReversePrintR ReversePrintR ( $ print_r_output , $ handlerRunner );
var_dump ( $ reverser -> reverse ()[ ' null ' ]);
// outputs "" 删除NullHandler的方式相同,您可以添加自己的处理程序。您所要做的就是确保它实现ReversePrintRHandlerHandlerInterface并且您很高兴。
图书馆正在关注SEMVER。所有次要更新和补丁更新均兼容。
请参阅许可证文件以获取更多信息。