public function next()
    {
        $cls  = $this->_cls;
        $data = $this->_getCurrentData();

        if (!$data) {
            $this->_curval = null;
            return $this->_curval;
        } else {
            ++$this->_count;
            $this->_curval = $data;
            return new $this->_cls($this->_curval);
        }
    }
public function next()
    {
        $cls  = $this->_cls;
        $data = $this->_getCurrentData();

        if (!$data) {
            $this->_curval = null;
            return $this->_curval;
        } else {
            ++$this->_count;
            $this->_curval = $data;
            return new $this->_cls($this->_curval);
        }
    }
public function next ( ) { $ cls = $ this -> _cls ; $ data = $ this -> _getCurrentData ( ) ; if ( ! $ data ) { $ this -> _curval = null ; return $ this -> _curval ; } else { ++ $ this -> _count ; $ this -> _curval = $ data ; return new $ this -> _cls ( $ this -> _curval ) ; } }
Return the next collection object

Example:
echo Person::all()->next();

@return mixed object
Return the next collection object