文字列関数の使用
$string = 'variable1=true&variable2=1,2,3&variable3="test"&variable4!=true&variable5!=4,5,6&variable!="test"';
$pairs = explode('&', $string);
foreach ($pairs as $pair) {
if (strstr($pair, '!=')) {
list($key, $value) = explode('!=', $pair);
} else {
list($key, $value) = explode('=', $pair);
}
$values[$key] = $value;
}
コードパッドで出力を表示する
このコードは、最初に を使用して文字列を分割し、&
キーと値のペアに分割します。その後、各ペアをループし、最初に を使用して再度分割を試み、!=
それが失敗した場合は を使用し=
ます。
正規表現の使用
preg_match_all('/((\w+)(=|!=)("\w+"|true|false|[\d\,]+)*)/', $string, $matches);
括弧を追加し、[...]
コンマ\d
をエスケープしました\,
。