PHP得到最后一次迭代foreach循环值

Phi*_*ord 1 php arrays iteration loops

好的,我有一个foreach循环,想知道我是否可以获得当前迭代的最后一个迭代数据值?

码:

foreach($array as $key=>$data) {
   echo "Key: ".$key." Data: ".$data."<br />";
}
Run Code Online (Sandbox Code Playgroud)

结果:

Key: 0 Data: 23244
Key: 0 Data: Program ID: 39-1-1499-1
Run Code Online (Sandbox Code Playgroud)

结果我想:

Key: 23244 Data: Program ID: 39-1-1499-1
Run Code Online (Sandbox Code Playgroud)

有没有办法把当前迭代的关键字作为最后一个数据?

Yas*_*vit 6

我不确定我是否理解你的问题..但看起来你需要数组中的最后一项......有办法从数组中获取第一个/最后一个项而不必迭代它们.

$last_item = end($array);
Run Code Online (Sandbox Code Playgroud)

看一下php手册中的例子..


mun*_*nch 5

$i=0;
foreach($array as $key=>$data) {
   if($i%2 == 0){ echo "Key: ".$data;}
   else{ echo "Data: ".$data."<br />";}
   $i++;
}
Run Code Online (Sandbox Code Playgroud)

或者那种效果应该起作用.

但值得注意的是,修复问题的根源(数组)可能更好,以便以正确的格式输出,您可以使用原始代码而不是此解决方法.