Key=Value 式のカンマ区切り文字列を連想配列に変換
キーと値のペアのカンマ区切り文字列を解析して連想配列は面倒な作業になる可能性があります。 explode() と foreach を使用する推奨方法は簡単かもしれませんが、大きな文字列の場合は非効率的になる可能性があります。
正規表現を使用したより効率的なアプローチ
詳細エレガントで効率的な解決策は、正規表現を活用することです。
$str = "key=value, key2=value2"; preg_match_all("/([^,= ]+)=([^,= ]+)/", $str, $r); $result = array_combine($r[1], $r[2]); var_dump($result);
このアプローチでは、 preg_match_all() 関数は、正規表現パターン ([^,= ] )=([^,= ] ) を使用してキーと値のペアの一致をすべて抽出します。結果の一致は、$r[1] に格納されたキーと $r[2] に格納された値とともに $r 配列に格納されます。最後に、array_combine() 関数はキーと値を組み合わせて、目的の連想配列を作成します。
質問で提供されているサンプル文字列は、次のような連想配列になります。
array( "key" => "value", "key2" => "value2" )
これこのメソッドは、カンマ区切りのキーと値の文字列を解析するための簡潔でパフォーマンスの高いソリューションを提供します。
以上がカンマ区切りの Key=Value 文字列を連想配列に効率的に変換するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。