PHP: SeekableIterator :: seek ()

2 Cevap php

Ben SeekableIterator arabirimini tamamlamak için seek () uygulamak istiyorsanız aranmalıdır pozisyon geçersiz ise, ben içten eski konumuna geri dönmek gerekir? Bu gibi:

public function seek( $position )
{
    $oldPosition = $this->_position;
    $this->_position = $position;
    if( !$this->valid() )
    {
        $this->_position = $oldPosition;
        throw new OutOfBoundsException( 'Invalid seek position (' . $position . ')' );
    }
}

2 Cevap

Bir kılavuz olarak php.net interface reference's example implementation kullanırsanız verilen hedef pozisyon geçerli olmasa bile, o zaman hayır, sen orijinal konumuna "dönmek" olmamalıdır.

Göre sample code from the SPL documentation, hala konumunu değiştirmek gerekir.