Php 使用preg_匹配的var_转储数组

Php 使用preg_匹配的var_转储数组,php,preg-match,var-dump,Php,Preg Match,Var Dump,我有一堆数组,我想把它们倒出来。这些数组是根据表单中的$GET命名的,因此每个数组都不同,但在开头附加了一个预定义的名称,因此我可能有array\u bob,array\u mary,array\u sam其中bob mary和sam是$GET值 我想使用preg_match是我最好的选择,但我就是不知道该怎么做 我也这么想,但显然不行 基本上,我需要的是在数组的末尾有一张通配符来甩掉玛丽、鲍勃和苏 有人能告诉我正确的方向吗?你在找这个吗 $arrName = $_GET['name']; pr

我有一堆数组,我想把它们倒出来。这些数组是根据表单中的$GET命名的,因此每个数组都不同,但在开头附加了一个预定义的名称,因此我可能有
array\u bob
array\u mary
array\u sam
其中bob mary和sam是$GET值

我想使用
preg_match
是我最好的选择,但我就是不知道该怎么做

我也这么想,但显然不行

基本上,我需要的是在数组的末尾有一张通配符来甩掉玛丽、鲍勃和苏


有人能告诉我正确的方向吗?

你在找这个吗

$arrName = $_GET['name'];
print_r(${'array_' . $arrName});
还是这个

$nameArray = array('bob', 'mary', 'sam');

foreach ($nameArray as $arrName) {
  if (isset(${'array_' . $arrName})) {
    print_r(${'array_' . $arrName});
  }
}

所有数组都在全局对象中,对吗?所以你可以这样做:

$arrayName = "array_" . $_GET['name'];
var_dump($GLOBALS[$arrayName]);
不过,更好的方法是将所有数组_bob、数组_mary等数组作为索引放在一个数组中,这样就不必处理全局对象。大概是这样的:

$allArrays = array("mary" => array_mary, "bob" => array_bob);
$name = $_GET['name'];
var_dump($allArrays[$name]);

$\u-GET数据中的键/值是什么?@MattDiamant它类似于“name”=>$\u-GET['name']之类的。因为我有很多数组,所以我想将它们全部转储,并且$arrName=$\u GET['name'];只获取最新的$\u GET值。谢谢,foreach循环正是我想要的。我没有想到将所有数组放入一个数组中。这让生活变得容易多了。非常感谢。
$allArrays = array("mary" => array_mary, "bob" => array_bob);
$name = $_GET['name'];
var_dump($allArrays[$name]);