PHP URL 对数组的查询

PHP URL QUERY to array

我对此有疑问:

<?php $url = 'aa=bb&cc=dd&ee=ff';

对于这样的事情:

<?php $url = array('aa' => 'bb', 'cc' => 'dd', 'ee' => 'ff');

我的代码:

<?php

$url = 'aa=bb&cc=dd&ee=ff';
preg_match_all('[(\w+)=(\w+)]', $url, $matches);
var_export($matches);

结果:

array ( 0 => array ( 0 => 'aa=bb', 1 => 'cc=dd', 2 => 'ee=ff', ), 1 => array ( 0 => 'aa', 1 => 'cc', 2 => 'ee', ), 2 => array ( 0 => 'bb', 1 => 'dd', 2 => 'ff', ), )

差不多好了,我就是想把这第一把钥匙弄掉。谢谢你的帮助。

parse_str() 函数将查询字符串解析为变量。

$url = 'aa=bb&cc=dd&ee=ff';

parse_str($url, $matches);

print_r($matches);

实际上,您可以通过许多不同的方式获得关联数组,例如使用 regex,使用 explode by & 等等.

但是如果我是你,我会用parse_str()

<?php
$url = 'aa=bb&cc=dd&ee=ff';
parse_str($url, $query);
print_r($query);
?>

输出:

Array (
 [aa] => bb 
 [cc] => dd 
 [ee] => ff 
)

演示: https://3v4l.org/fjadK