phpbar.de logo

Mailinglisten-Archive

AW: [php] feof() Reaktionszeit bei Socket-Connects

AW: [php] feof() Reaktionszeit bei Socket-Connects

Andreas Demmer php at andreas-demmer.de
Fre Mar 11 10:46:11 CET 2005


Thomas schrieb:

>> wie gewohnt alles aus dem Gedächtnis, am besten im RFC nachlesen.
> gedaechtnis sollte aber schon ausreichend fuer sein problem sein :)

War es in der Tat! :-) Ich hab zwar tatsächlich meine POP3 Implementierung
auf Basis des RFCs gemacht, aber den finalen Punkt übersehen!

Folgende Methode funktioniert einwandfrei:

    /**
     * returns an email, optionally limited to $limit lines
     *
     * @return string
     * @param int $number
     * @param int $limit
     */  
    public function fetchEmail($number, $limit = FALSE) {
    	  $endOfMessage = FALSE;
    	  $email = NULL;
    	
        $command = (bool)$limit ? 'TOP '.$number.' '.$limit : 'RETR
'.$number;
        $this->sendCommand($command);
            
        while(!$endOfMessage){
        	$line = fgets($this->connect);
        	$endOfMessage = (trim($line) == '.') ? TRUE : FALSE;
            $email .= $endOfMessage ? NULL : $line;
        }
        
        return $email;
    }

Gruß,
Andreas

-- 
http://www.andreas-demmer.de


php::bar PHP Wiki   -   Listenarchive