PHP 获取数组任意下标key的上一个prev和下一个next下标值
$xoops[1] = '小';
$xoops[2] = '孩';
$xoops[3] = '子';
$xoops[4] = '气';
$steps = new Steps();
foreach($xoops as $key=>$value){
$steps->add($key);
}
$steps->setCurrent(3);//参数为key值
echo '上一个下标:'.$steps->getPrev()."
";
echo '指定的下标:'.$steps->getCurrent()."
";
echo '下一个下标:'.$steps->getNext()."
";
class Steps {
private $all;
private $count;
private $curr;
function __construct() {
$this->count = 0;
}
function add($step) {
$this->count++;
$this->all[$this->count] = $step;
}
function setCurrent($step) {
reset($this->all);
for ($i = 1; $i <= $this->count; $i++) {
if ($this->all[$i] == $step)
break;
next($this->all);
}
$this->curr = current($this->all);
}
function getCurrent() {
return $this->curr;
}
function getNext() {
self::setCurrent($this->curr);
return next($this->all);
}
function getPrev() {
self::setCurrent($this->curr);
return prev($this->all);
}
}
打印结果:
上一个下标:2
指定的下标:3
下一个下标:4
原文:http://blog.csdn.net/phpfenghuo/article/details/30991029
本文介绍了一种使用自定义类Steps来获取PHP数组中指定下标的前一个和后一个元素的方法。通过实例演示了如何创建Steps类并实现getCurrent、getNext和getPrev等方法,以便在数组遍历时方便地获取相邻元素。
401

被折叠的 条评论
为什么被折叠?



