(PHP 4, PHP 5, PHP 7)
imap_search — Liefert ein Array von Nachrichten, die den gegebenen Suchkriterien entsprechen
$imap_stream
, string $criteria
[, int $options
= SE_FREE
[, string $charset
= NULL
]] ) : arrayimap_search() durchsucht die Nachrichten des aktuellen Postfachs.
Der Suchstring um z.B. nach allen unbeantworteten Nachrichten von Mutter zu suchen wäre "UNANSWERED FROM Mutter". Die Suche unterscheidet nicht nach Groß- und Kleinschreibung. Die folgende Liste von Suchkriterien wurde aus dem Sourcecode des UW c-client erstellt, sie ist daher nicht unbedingt vollständig oder in allen Einzelheiten korrekt (siehe auch » RFC1176, Abschnitt "tag SEARCH search_criteria").
imap_stream
Eine von imap_open() zurückgegebene IMAP-Verbindung.
criteria
Eine aus mit Leerzeichen getrennten Schlüsselworten und Argumenten bestehende Zeichenkette.
Argumente, die selbt Leerzeichen enthalten, müssen in doppelte
Anführungszeichen gefasst werden (z.B. FROM "Hans Müller"
).
Es existieren folgende Schlüsselworte:
options
Der Parameter options
kann
auf SE_UID
gesetzt werden,
um UIDs statt Nachrichtennummern zurückzuerhalten.
charset
Der bei der Zeichenkettesuche zu verwendende MIME-Zeichensatz.
Liefert ein Array mit Nachrichtennummern oder UIDs.
Wenn die Suchkriterien nicht verstanden, oder
keine Nachrichten gefunden wurden, wird FALSE
zurückgegeben.
Beispiel #1 imap_search() Beispiel
<?php
$conn = imap_open('{imap.example.com:993/imap/ssl}INBOX', 'foo@example.com', 'pass123', OP_READONLY);
$some = imap_search($conn, 'SUBJECT "HOWTO be Awesome" SINCE "8 August 2008"', SE_UID);
$msgnos = imap_search($conn, 'ALL');
$uids = imap_search($conn, 'ALL', SE_UID);
print_r($some);
print_r($msgnos);
print_r($uids);
?>
Das oben gezeigte Beispiel erzeugt eine ähnliche Ausgabe wie:
Array ( [0] => 4 [1] => 6 [2] => 11 ) Array ( [0] => 1 [1] => 2 [2] => 3 [3] => 4 [4] => 5 [5] => 6 ) Array ( [0] => 1 [1] => 4 [2] => 6 [3] => 8 [4] => 11 [5] => 12 )