次の形式で文字列を配列しますか?
質問
どのようにして$ _POSTが行う形式で文字列を配列できますか...
101=1&2020=2&303=3
(不思議な場合、jQuery Sortable Serializeの結果... SQLステートメントを実行して、=記号の右側にあるフィールドを更新したいのですが、等号の左側はどこですか?私はこのためのSQLを知っていますが、foreach($ VAR as $ key => $ value)を使用して、そこからSQLステートメントを構築できる形式にしたかったのです。 = 1ありますか?
$ key = 101および$ value = 1の方法でこれを爆発させたいだけです
紛らわしい音;) 本当にありがとうございました!!
解決
$input = "101=1&2020=2&303=3";
$output = array();
$exp = explode('&',$input);
foreach($exp as $e){
$pair = explode("=",$e);
$output[$pair[0]] = $pair[1];
}
他のヒント
parse_str
関数を参照してください。 。
PHPで最も直感的な関数名ではありませんが、探している関数は parse_str()。次のように使用できます:
$myArray = array();
parse_str('101=1&2020=2&303=3', $myArray);
print_r($myArray);
1つの迅速で汚れたソリューション:
<?php
$str = "101=1&2020=2&303=3";
$VAR = array();
foreach(explode('&', $str) AS $pair)
{
list($key, $value) = each(explode('=', $pair));
$VAR[$key] = $value;
}
?>
parse_str($query_string, $array_to_hold_values);
&amp;で爆発[101 = 1、2020 = 2、303 = 3]を含む配列を取得するには、要素ごとに=で分割し、キー/値のペアを新しい配列にプッシュします。
所属していません StackOverflow