reverse print r
ve composer.lock ?
このライブラリは、PHPのprint_r関数の出力を元の変数に戻すための6つの異なるハンドラーを提供します。タイプに使用できるハンドラーがない場合、 stringとして返されます。
stringとして返されるのではなく、タイプキャストする必要があります"" )はnullとして扱われます( NullHandler参照)booleanサポートなし)array 、タイプキャストでサポートする必要がありますpublic 、 protected 、 privateプロパティは、タイプキャスティングでサポートする必要がありますパッケージはComposerを介して利用できます。
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をフォローしています。すべてのマイナーおよびパッチの更新は、逆方向に互換性があります。
詳細については、ライセンスファイルをご覧ください。