Mailinglisten-Archive |
Andreas Demmer schrieb: > 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; ___________________^ Blöde Frage: nach RFC MUSS doch der Punkt alleine und nach einem CRLF stehen. Oder täusche ich mich da? Das heisst doch, das zB. <CRLF> \t.\t <CRLF> Nach RFC NICHT als Mailende gewertet werden darf. Aber nach deinem Skript würde das als Mailende gewertet. Oder hab ich was übersehen? Grüße Andreas -- wdv Medien & Kommunikation GmbH & Co. OHG Mediendatenverarbeitung Andreas Heigl Siemensstrasse 6 61352 Bad Homburg Germany Telefon +49-(0)6172-670-185 Telefax +49-(0)6172-670-181 www.wdv.de
php::bar PHP Wiki - Listenarchive