protected function _openMboxFile($filename)
    {
        if ($this->_fh) {
            $this->close();
        }

        $this->_fh = @fopen($filename, 'r');
        if (!$this->_fh) {
            /**
             * @see Zend_Mail_Storage_Exception
             */
            // require_once 'Zend/Mail/Storage/Exception.php';
            throw new Zend_Mail_Storage_Exception('cannot open mbox file');
        }
        $this->_filename = $filename;
        $this->_filemtime = filemtime($this->_filename);

        if (!$this->_isMboxFile($this->_fh, false)) {
            @fclose($this->_fh);
            /**
             * @see Zend_Mail_Storage_Exception
             */
            // require_once 'Zend/Mail/Storage/Exception.php';
            throw new Zend_Mail_Storage_Exception('file is not a valid mbox format');
        }

        $messagePos = array('start' => ftell($this->_fh), 'separator' => 0, 'end' => 0);
        while (($line = fgets($this->_fh)) !== false) {
            if (strpos($line, 'From ') === 0) {
                $messagePos['end'] = ftell($this->_fh) - strlen($line) - 2; // + newline
                if (!$messagePos['separator']) {
                    $messagePos['separator'] = $messagePos['end'];
                }
                $this->_positions[] = $messagePos;
                $messagePos = array('start' => ftell($this->_fh), 'separator' => 0, 'end' => 0);
            }
            if (!$messagePos['separator'] && !trim($line)) {
                $messagePos['separator'] = ftell($this->_fh);
            }
        }

        $messagePos['end'] = ftell($this->_fh);
        if (!$messagePos['separator']) {
            $messagePos['separator'] = $messagePos['end'];
        }
        $this->_positions[] = $messagePos;
    }
protected function _openMboxFile($filename)
    {
        if ($this->_fh) {
            $this->close();
        }

        $this->_fh = @fopen($filename, 'r');
        if (!$this->_fh) {
            /**
             * @see Zend_Mail_Storage_Exception
             */
            // require_once 'Zend/Mail/Storage/Exception.php';
            throw new Zend_Mail_Storage_Exception('cannot open mbox file');
        }
        $this->_filename = $filename;
        $this->_filemtime = filemtime($this->_filename);

        if (!$this->_isMboxFile($this->_fh, false)) {
            @fclose($this->_fh);
            /**
             * @see Zend_Mail_Storage_Exception
             */
            // require_once 'Zend/Mail/Storage/Exception.php';
            throw new Zend_Mail_Storage_Exception('file is not a valid mbox format');
        }

        $messagePos = array('start' => ftell($this->_fh), 'separator' => 0, 'end' => 0);
        while (($line = fgets($this->_fh)) !== false) {
            if (strpos($line, 'From ') === 0) {
                $messagePos['end'] = ftell($this->_fh) - strlen($line) - 2; // + newline
                if (!$messagePos['separator']) {
                    $messagePos['separator'] = $messagePos['end'];
                }
                $this->_positions[] = $messagePos;
                $messagePos = array('start' => ftell($this->_fh), 'separator' => 0, 'end' => 0);
            }
            if (!$messagePos['separator'] && !trim($line)) {
                $messagePos['separator'] = ftell($this->_fh);
            }
        }

        $messagePos['end'] = ftell($this->_fh);
        if (!$messagePos['separator']) {
            $messagePos['separator'] = $messagePos['end'];
        }
        $this->_positions[] = $messagePos;
    }
protected function _openMboxFile ( $ filename ) { if ( $ this -> _fh ) { $ this -> close ( ) ; } $ this -> _fh = @ fopen ( $ filename , 'r' ) ; if ( ! $ this -> _fh ) { /**
             * @see Zend_Mail_Storage_Exception
             */ // require_once 'Zend/Mail/Storage/Exception.php'; throw new Zend_Mail_Storage_Exception ( 'cannot open mbox file' ) ; } $ this -> _filename = $ filename ; $ this -> _filemtime = filemtime ( $ this -> _filename ) ; if ( ! $ this -> _isMboxFile ( $ this -> _fh , false ) ) { @ fclose ( $ this -> _fh ) ; /**
             * @see Zend_Mail_Storage_Exception
             */ // require_once 'Zend/Mail/Storage/Exception.php'; throw new Zend_Mail_Storage_Exception ( 'file is not a valid mbox format' ) ; } $ messagePos = array ( 'start' => ftell ( $ this -> _fh ) , 'separator' => 0 , 'end' => 0 ) ; while ( ( $ line = fgets ( $ this -> _fh ) ) !== false ) { if ( strpos ( $ line , 'From ' ) === 0 ) { $ messagePos [ 'end' ] = ftell ( $ this -> _fh ) - strlen ( $ line ) - 2 ; // + newline if ( ! $ messagePos [ 'separator' ] ) { $ messagePos [ 'separator' ] = $ messagePos [ 'end' ] ; } $ this -> _positions [ ] = $ messagePos ; $ messagePos = array ( 'start' => ftell ( $ this -> _fh ) , 'separator' => 0 , 'end' => 0 ) ; } if ( ! $ messagePos [ 'separator' ] && ! trim ( $ line ) ) { $ messagePos [ 'separator' ] = ftell ( $ this -> _fh ) ; } } $ messagePos [ 'end' ] = ftell ( $ this -> _fh ) ; if ( ! $ messagePos [ 'separator' ] ) { $ messagePos [ 'separator' ] = $ messagePos [ 'end' ] ; } $ this -> _positions [ ] = $ messagePos ; }
open given file as current mbox file

@param  string $filename filename of mbox file
@return null
@throws Zend_Mail_Storage_Exception
open given file as current mbox file