Привет, я получаю строку в нашей базе данных после завершения теста, который содержит результаты каждого вопроса в одной строке. лайк:
&q1=2&q2=5&q14=7&q6=8&q4=9&q19=10&q12=1&q20=3
на каждый вопрос можно пропустить какое-то время, чтобы ответить позже, поэтому ответы не отсортированы.
теперь я хочу результаты как
q1=2,q2=5,q4=9,q6=8,q12=1,q14=7,q19=10,q20=3
Может кто-нибудь мне помочь.?
Попробуй это
$a='&q1=2&q2=5&q14=7&q6=8&q4=9&q19=10&q12=1&q20=3';
$b=explode('&',$a);
natsort($b);
$c=implode(',',$b);
print($c);
попробуй вот так
$a='&q1=2&q2=5&q14=7&q6=8&q4=9&q19=10&q12=1&q20=3';
$a = ltrim($a,'&');
$b=explode('&',$a);
natsort($b);
echo $c=implode(',',$b);
Попробуй это:
$url = '&q1=2&q2=5&q14=7&q6=8&q4=9&q19=10&q12=1&q20=3';
parse_str($url, $urlDecoded);
$urlDecoded = array_flip($urlDecoded);
natsort($urlDecoded);
$urlDecoded = array_flip($urlDecoded);
var_dump($urlDecoded);
Другие примеры были хорошими, но у них всех была запятая ,
,
Вот улучшенная версия:
$a=explode('&','&q1=2&q2=5&q14=7&q6=8&q4=9&q19=10&q12=1&q20=3');
natsort($a);
echo substr(implode(',',$a),1);