文字列の値と数値の値を持つ多次元配列があります。配列を JSON オブジェクトに変換すると、次のような結果が得られます。
"A" : "1", "B" : "Text", "C" : "3"
目標は、次のような JSON を作成することです。
"A" : 1, "B" : "Text", "C" : 3
以前は、エンコード後に JSON を編集することでこれを実現していました。
$JSON = preg_replace('/"(-?\d+\.?\d*)"/', '$1', json_encode($array));
しかし、それはさまざまな理由で問題になっています。
そのため、代わりに、配列を で JSON に変換する前に、すべての値を調べて、値が数値の場合は、その値の型が からにjson_encode()
変更されることを確認したいと思います。string
int
settype() コマンドを使用して、PHP で変数の型を設定できることはわかっています。
settype(int, $variable);
それを のようなコマンドと組み合わせる必要があると思いますがarray_walk()
、数値のみに作用するテストを行うように組み合わせる方法がわかりません。
PHP で多次元配列を探索し、数値のみを含む値を見つけて、それらをint
型に変換することは可能ですか?