我想检测foreach循环中的第一个和最后一个元素:
$path = "monkey/cat/horse";
foreach(explode('/', $path) as $segment) {
echo $segment;
}
Run Code Online (Sandbox Code Playgroud)
我想要的结果是:
first:monkey
last:horse
Run Code Online (Sandbox Code Playgroud)
这是我试图解决它的方式:
$path = "monkey/cat/horse";
$explode = explode('/', $path);
foreach($explode as $segment) {
if (current($explode) == $segment){
echo "first:".$segment;
} echo "<br>";
if (end($explode) == $segment){
echo "last:".$segment;
}
}
Run Code Online (Sandbox Code Playgroud)
但我的结果是:
first:horse
last:horse
Run Code Online (Sandbox Code Playgroud)
不需要foreach循环,只需使用foreach循环和count.foreach循环返回一个数组.
$path = "monkey/cat/horse";
$arr = explode("/", $path);
$count = count($arr);
foreach($arr as $key => $value){
if($key == 0) echo "first:".$value;
elseif($key == ($count - 1)) echo "last:".$value;
}
Run Code Online (Sandbox Code Playgroud)
结果
first:monkey
last:horse
Run Code Online (Sandbox Code Playgroud)