PHP 获取数组任意下标key的上一个prev和下一个next下标值

WBOY
リリース: 2016-06-13 09:33:12
オリジナル
2501 人が閲覧しました

PHP 获取数组任意下标key的上一个prev和下一个next下标值


<?php	
$xoops[1] = &#39;小&#39;;
$xoops[2] = &#39;孩&#39;;
$xoops[3] = &#39;子&#39;;
$xoops[4] = &#39;气&#39;;


$steps = new Steps();

foreach($xoops as $key=>$value){

$steps->add($key);

}

$steps->setCurrent(3);//参数为key值
echo &#39;上一个下标:&#39;.$steps->getPrev()."<br />";
echo &#39;指定的下标:&#39;.$steps->getCurrent()."<br />";
echo &#39;下一个下标:&#39;.$steps->getNext()."<br />";




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
ログイン後にコピー


関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のおすすめ
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート