У меня есть строка
$str = "recordsArray[]=3&recordsArray[]=1";
Есть ли простой способ сделать это в массиве, кроме взрыва эта строка в &? Я ожидаю такой результат print_r($str);
&
print_r($str);
//expecting output array('0' => '3','1' => '1');
Да, есть: parse_str Документы ;Пример ( Демо ):
parse_str
parse_str("recordsArray[]=3&recordsArray[]=1", $test); print_r($test);
Используйте preg_match_all вот так:
$str = "recordsArray[]=3&recordsArray[]=1"; if ( preg_match_all('~\[\]=(\d+)~i', $str, $m) ) print_r ( $m[1] );
ВЫВОД:
Array ( [0] => 3 [1] => 1 )