有没有办法直接探索数组中的数组而不通过第一个?

问题描述 投票:0回答:1

我正在使用preg_match_all()来获取我的url参数的匹配项。问题是匹配函数发回给我一个数组的数组。因此,使用foreach函数(例如,通过默认参数替换参数)来探索它变得很困难。

有没有办法直接探索一个数组数组并发回第二个数组的值,而不是第一个数组,而不是通过第一个?

我给你举了一个问题的简单例子:

$var = "abababa";

preg_match_all("#(a)#", $var, $matches);

$args = array_slice ($matches, 1);

var_dump($args) 

arg回复我:

array (size=1)
  0 => 
    array (size=5)
      0 => string 'a' (length=1)
      1 => string 'a' (length=1)
      2 => string 'a' (length=1)
      3 => string 'a' (length=1)

我希望它能够回归

   array (size=5)
      0 => string 'a' (length=1)
      1 => string 'a' (length=1)
      2 => string 'a' (length=1)
      3 => string 'a' (length=1)

因此,能够通过othes(例如默认元素)替换args元素。

谢谢,如果你能帮助我。

php arrays preg-match
1个回答
0
投票

你可以这样做:

$var = "abababa";

preg_match_all("#(a)#", $var, $matches);

$args = array_slice ($matches[0], 1); // notice we are accessing the first element of $matches

var_dump($args);

这应该产生你想要的输出。

© www.soinside.com 2019 - 2024. All rights reserved.