Php 如何从此数组中获取此元素
我有一个数组$arr,当我使用var_dump时,它是这样的。在这种情况下,获得最后第二项“简单”的最简单方法是什么。我不能使用$arr[4],因为每个url的项目数量可能会有所不同,我总是希望只使用最后一个。请注意,末尾有一个额外的空字符串,它将始终存在Php 如何从此数组中获取此元素,php,arrays,Php,Arrays,我有一个数组$arr,当我使用var_dump时,它是这样的。在这种情况下,获得最后第二项“简单”的最简单方法是什么。我不能使用$arr[4],因为每个url的项目数量可能会有所不同,我总是希望只使用最后一个。请注意,末尾有一个额外的空字符串,它将始终存在 array 0 => string 'http:' (length=5) 1 => string '' (length=0) 2 => string 'site.com' 3 => string 'gr
array
0 => string 'http:' (length=5)
1 => string '' (length=0)
2 => string 'site.com'
3 => string 'group'
4 => string 'simple'
5 => string 'some-test-url'
6 => string '' (length=0)
只要它不是键控数组或散列数组,并且它有两个以上的项
$arr[count($arr) - 2];
注:我对“倒数第二”的解释是从末尾算起的第二个。这可能与你的不同。如果是,则减去3。只要它不是键控数组或哈希数组,并且有两个以上的项
$arr[count($arr) - 2];
$second_last = count($array) - 3;
$value = $array[$second_last];
注:我对“倒数第二”的解释是从末尾算起的第二个。这可能与你的不同。如果是,减去3。获取计数并减去3
$second_last = count($array) - 3;
$value = $array[$second_last];
$arr[count($arr)-3]
得到计数并减去3
$arr[count($arr)-3]
我应该帮助你
$arrayLen=count($arr);
echo $arr[$arrayLen-2];
应该对你有帮助。还有另一种选择:
$arrayLen=count($arr);
echo $arr[$arrayLen-2];
echo current(array_slice($data, -3, 1));
还有另一种选择:
echo current(array_slice($data, -3, 1));
为什么不直接问一下如何获取字符串中URL的最后一个组件?请注意,倒数第二和$arr[4]不是一回事。除非我疯了,否则我会认为$arr[4]是倒数第三名。@Ignacio Vazquez Abrams这不是最后一名。如果将最后一个空字符串作为一个项目计算,则这是倒数第二个,甚至倒数第三个。作为旁注,但非常重要的一点是:如果这是您的结构,则应为其创建Url类。我确信您有操作这个数组的函数,所以它们应该是url类的方法。在PHP中,我们的编码通常非常松散;作为一个社区,我们需要更好地使用经过验证和结构化的技术。为什么不问问我如何在字符串中获取URL的最后一个组件?请注意,倒数第二和$arr[4]不是一回事。除非我疯了,否则我会认为$arr[4]是倒数第三名。@Ignacio Vazquez Abrams这不是最后一名。如果将最后一个空字符串作为一个项目计算,则这是倒数第二个,甚至倒数第三个。作为旁注,但非常重要的一点是:如果这是您的结构,则应为其创建Url类。我确信您有操作这个数组的函数,所以它们应该是url类的方法。在PHP中,我们的编码通常非常松散;作为一个社区,我们需要更好地使用经过验证的结构化技术。