を持つ配列に文字列を変換します。あなたは選択肢がないがあれば、あなたのニーズに応じて、これを構築する、あるいはvar_export()
している場合は、JSONなどの別の形式を使用する必要がありますは、私は文字列変数を持つキー
$array['asd'] = 0
$array['mogh'] = 1
$array['for'] = 3
を持つ配列に文字列を変換します。あなたは選択肢がないがあれば、あなたのニーズに応じて、これを構築する、あるいはvar_export()
している場合は、JSONなどの別の形式を使用する必要がありますは、私は文字列変数を持つキー
$array['asd'] = 0
$array['mogh'] = 1
$array['for'] = 3
:これは私が欲しいものである
preg_match_all('/\[([^\]]+)\] => (\d+)/', $asd, $matches);
$array = array_combine($matches[1], $matches[2]);
かそれをきれいにして、クエリ文字列に変換して解析することができます:
echo $asd = str_replace(array('[',']',' ','=>',','), array('','','','=','&'), $asd);
parse_str($asd, $array);
クエリ文字列の解析をエミュレートする2番目のアプローチとして、 'ab [] = 1&ab [] = 2&...'のような配列があることがわかります。それは交換によって壊れるでしょう。しかし、もちろん私の発言はより複雑なケースに関係しています... – RomanPerekhrest
so [asd] => 0、[mogh] => 1、[for] => 3はasd = 0&mogh = 1&for = 3になります。 –
はい'asd = 0&mogh = 1&for = 3'。あなたが本当に欲しかったのは、Lemmeの推測ですね。 – AbraCadaver
なぜですか?この文字列はどこにありますか? – AbraCadaver
文字列は固定形式ですか? json_decodeを使い、文字列を '$ asd = '{" asd ":0、" mogh ":1、" for:3}';と指定するほうがずっと簡単です。 $ asd、true); (2番目の引数はオブジェクトの代わりに配列を返します) – Theo