国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

Inhaltsverzeichnis
cpanel
exim
postfix
sendmail
qmail
Heim Backend-Entwicklung PHP-Tutorial Rohrleitungs -E -Mails an eine Laravel -Bewerbung

Rohrleitungs -E -Mails an eine Laravel -Bewerbung

Feb 22, 2025 am 10:34 AM

Piping Emails to a Laravel Application

Kernpunkte

    Die Handwerksanerin für das Befehlszeilenwerkzeug von
  • Laravel kann erweitert werden, um RAW -E -Mails zu erhalten und in Ihrer Bewerbung zu verwenden. Dies beinhaltet die Erstellung eines neuen Befehls wie php artisan email:parse, der in Artisan registriert und ausgeführt werden kann, um die ursprüngliche Nachricht aus dem IO -Stream abzurufen.
  • Verwenden Sie php-mime-mail-parser usw., um die ursprüngliche Nachricht in einen separaten Abschnitt aufzul?sen. Dies erm?glicht das Abrufen von Header wie das Thema und den K?rper der E -Mail. Die Parsen -Mail kann dann leicht in der Datenbank gespeichert werden.
  • Diese Einstellung kann auch alle Anh?nge in der Nachricht verarbeiten. Nach dem Abrufen von Anh?ngen k?nnen Sie ein Dateisystemobjekt erstellen, um die Datei auf dem Server zu speichern. Abh?ngig vom verwendeten Tool oder dem verwendeten E -Mail -Server k?nnen verschiedene Methoden verwendet werden, um E -Mails an die Anwendung zu liefern.

Einführung

Sie sehen dies h?ufig in Projekten für Projektmanagement oder Support -Management: Sie k?nnen auf E -Mails antworten und es wird automatisch in Ihrer Webanwendung angezeigt. Diese Tools k?nnen diese E -Mails direkt in ihre Systeme importieren.

In diesem Artikel lernen wir, wie Sie E -Mails an unsere Laravel 4 -Anwendung übermitteln. Dazu begannen wir mit einem brandneuen Laravel 4 -Projekt, das wie unten gezeigt über Komponisten installiert wurde.

composer create-project laravel/laravel your-project-name --prefer-dist

Erstellen Sie Artisan -Befehl

Um E -Mails in unsere Bewerbung importieren zu k?nnen, müssen wir die E -Mails über die Befehlszeile an unsere Bewerbung liefern. Glücklicherweise verfügt Laravel über ein Befehlszeilen -Tool namens Artisan, das mehrere Aufgaben ausführen kann. Um eine Liste aller Aufgaben anzuzeigen, die Artisan ausführen kann, k?nnen Sie in dem Stammverzeichnis Ihres Projekts php artisan list ausführen.

In diesem Fall m?chten wir, dass es eine ganz bestimmte Aufgabe ausführt: Akzeptieren Sie die ursprüngliche E -Mail und verwenden Sie sie in unserer Anwendung. Leider ist dies keiner der grundlegenden Merkmale, die sich mit Artisan handeln kann. Wir k?nnen es leicht mit dem neuen Befehl erweitern: php artisan email:parse. Wir werden dann Artisan starten und in diesem Fall eine bestimmte Aufgabe namens email:parse ausführen.

Unser erster Schritt ist, diesen Befehl zu erstellen. Sie k?nnen einen neuen Befehl über den eigenen Befehl von Artisan erstellen, um einen neuen Befehl zu erstellen. Führen Sie einfach den folgenden Befehl im Stammverzeichnis des Projekts aus:

php artisan command:make EmailParserCommand

Wenn alles gut l?uft, finden Sie jetzt eine Datei mit dem Namen app/commands im Verzeichnis EmailParserCommand.php. ?ffnen Sie es in Ihrem bevorzugten Editor und sehen Sie sich die Eigenschaften $name und $description an. Wir k?nnen es nach Bedarf anpassen. Indem der Befehl einen klaren Namen und eine klare Beschreibung gibt, wird der Befehl in der Handwerksbefehlsliste gut aufgeführt.

Zum Beispiel habe ich es dazu ge?ndert:

/**
 * 控制臺(tái)命令名稱。
 *
 * @var string
 */
protected $name = 'email:parse';

/**
 * 控制臺(tái)命令描述。
 *
 * @var string
 */
protected $description = '解析傳入的電子郵件。';

Registrierung der Reihenfolge

Wenn wir in der Stammin unseres Projekts php artisan email:parse ausführen, erhalten Sie eine Nachricht, dass dieser Befehl noch nicht registriert wurde. Unser n?chster Schritt besteht darin, sicherzustellen, dass dieser Befehl in Artisan registriert ist. ?ffnen wir die Datei app/start/artisan.php und fügen Sie Artisan::add(new EmailParserCommand); zum Ende der Datei hinzu, um unseren neu erstellten Befehl zu registrieren. Wir k?nnen jetzt den Befehl list erneut ausführen, um den von uns aufgeführten email:parse -Fehl anzuzeigen. Bitte beachten Sie, dass der Name und die Beschreibung, die Sie gerade ausgefüllt haben, hier angezeigt werden.

Original -E -Mail

abrufen

Wenn ein Befehl durch Handwerker aufgerufen wird, ruft er immer die fire -Methode auf. Zun?chst müssen wir hier unsere E -Mail -Parsen hinzufügen. Die E -Mail befindet sich derzeit in unserem IO -Stream und wir k?nnen sie von php://stdin abrufen. Wir ?ffnen diesen IO -Stream und sammeln eine kleine Anzahl von E -Mails, bis wir den gesamten Stream lesen.

composer create-project laravel/laravel your-project-name --prefer-dist

Die E -Mail, die an unseren Handwerksbefehl gesendet wird, befindet sich jetzt in der Variablen $rawEmail. Es ist die gesamte E -Mail mit Header, K?rper und Anh?ngen.

Zeitplan -E -Mail

Wir haben jetzt die ursprüngliche E -Mail, aber ich bevorzuge die E -Mail in mehrere Teile. Ich m?chte Header wie Themen und E -Mail -K?rper abrufen. Wir k?nnen unseren eigenen Code schreiben, um alle diese Teile zu teilen, aber jemand hat ein Paket erstellt, das wir in unserer Anwendung verwenden k?nnen. Dieses Paket kann unsere gesamte E -Mail in logische Teile unterteilen. Fügen Sie der folgenden Zeile Ihrer composer.json -Datei hinzu und führen Sie composer update

aus
php artisan command:make EmailParserCommand

Jetzt müssen wir sicherstellen app/command/EmailParserCommand.php

Jetzt k?nnen wir die ursprüngliche E -Mail in separate Abschnitte analysieren. Fügen Sie die folgenden Codezeilen zum Ende der
/**
 * 控制臺(tái)命令名稱。
 *
 * @var string
 */
protected $name = 'email:parse';

/**
 * 控制臺(tái)命令描述。
 *
 * @var string
 */
protected $description = '解析傳入的電子郵件。';
-Methode hinzu.

fire

Wir erstellen zuerst einen neuen Parser. Als n?chstes setzen wir die ursprüngliche E -Mail in den Text des Parsers und nennen schlie?lich verschiedene Methoden, um die Daten vom Kopf- oder K?rper zu erhalten.
/**
 * 執(zhí)行控制臺(tái)命令。
 *
 * @return void
 */
public function fire()
{
    // 從 stdin 讀取
    $fd = fopen("php://stdin", "r");
    $rawEmail = "";
    while (!feof($fd)) {
        $rawEmail .= fread($fd, 1024);
    }
    fclose($fd);
}

Sie k?nnen jetzt problemlos E -Mails in Ihrer Datenbank speichern. Wenn Sie beispielsweise eine E -Mail -Entit?t haben, k?nnen Sie die E -Mail in Ihrer Datenbank wie folgt speichern:

"messaged/php-mime-mail-parser": "dev-master"
Verarbeitungsanh?nge

M?glicherweise m?chten Sie sogar alle Anh?nge speichern, die Ihrer E -Mail auf Ihrem Server angeh?ngt sind. Die E -Mail -Parser -Klasse kann alle verfügbaren Anh?nge verarbeiten. Fügen Sie zun?chst erneut die folgenden Zeilen an die Oberseite der

-Klasse hinzu.

app/command/EmailParserCommand.php

Jetzt müssen wir unsere
use MimeMailParser\Parser;
-Methode erweitern:

composer create-project laravel/laravel your-project-name --prefer-dist

Mal sehen, was dieser Teil tats?chlich tut. Die erste Zeile holt den Anhang aus der E -Mail ab. $attachments Eine Variable ist ein Array von Anhangsobjekten. Als n?chstes stellen wir sicher, dass ein neues Dateisystemobjekt erstellt wird, das das Speichern der Datei auf unserem Server verarbeitet. Dann fangen wir an, alle Anh?nge zu iterieren. Wir nennen die put -Methode des Dateisystems Objekt, das den Pfad und den Inhalt der Datei akzeptiert. In diesem Fall m?chten wir die Datei dem Verzeichnis public/uploads hinzufügen und den Dateinamen verwenden, den der Anhang tats?chlich hat. Der zweite Parameter ist der Inhalt der tats?chlichen Datei.

Das ist es! Ihre Dateien werden jetzt in public/uploads gespeichert. Stellen Sie einfach sicher, dass Ihr Mailserver dieses Verzeichnis tats?chlich zu Dateien hinzufügen kann, indem Sie die richtigen Berechtigungen festlegen.

Konfigurieren Sie unseren Mailserver

Bisher haben wir die gesamte App zum Abrufen, Teilen und Speichern unserer E -Mails vorbereitet. Wenn Sie jedoch nicht wissen, wie Sie die E -Mail tats?chlich an Ihren neu erstellten Kunsthandwerksbefehl senden sollen, ist dieser Code nutzlos.

Im Folgenden finden Sie verschiedene M?glichkeiten, Ihre E -Mail an Ihre Anwendung zu liefern, abh?ngig vom Tool oder dem von Ihnen verwendeten Mailserver. Zum Beispiel m?chte ich support@peternijssen.nl an meine App weiterleiten, die sich bei /var/www/supportcenter befindet. Beachten Sie, dass ich in den tats?chlichen Befehlen, die Sie unten sehen werden, jedes Mal --env=local hinzugefügt habe, um sicherzustellen, dass Artisan wie wir auf der Entwicklungsmaschine l?uft. Wenn Sie sich in einer Produktionsumgebung befinden, k?nnen Sie diesen Abschnitt l?schen.

cpanel

Wenn Sie CPANEL verwenden, k?nnen Sie im allgemeinen Menü auf die Weiterleitung klicken. Fügen Sie einen neuen Spediteur hinzu und definieren Sie die Adresse, die Sie an Ihre Bewerbung weiterleiten m?chten. Klicken Sie auf Erweiterte Einstellungen und w?hlen Sie die Option Pipe to Programs aus. Im Eingangsfeld k?nnen Sie die folgende Zeile einfügen:

php artisan command:make EmailParserCommand

Beachten Sie, dass CPanel einen Pfad relativ zu Ihrem Heimverzeichnis verwendet.

exim

Wenn auf Exim die Datei /etc/valiases/peternijssen.nl ?ffnen. Stellen Sie sicher, dass in dieser Datei die folgenden Zeilen vorhanden sind:

/**
 * 控制臺(tái)命令名稱。
 *
 * @var string
 */
protected $name = 'email:parse';

/**
 * 控制臺(tái)命令描述。
 *
 * @var string
 */
protected $description = '解析傳入的電子郵件。';

Ausführen newaliases, um die Alias ??-Datenbank wieder aufzubauen.

postfix

Auf Postfix stellen Sie sicher, dass die folgenden Zeilen in Ihrer /etc/postfix/main.cf -Datei vorhanden sind und nicht kommentiert werden:

/**
 * 執(zhí)行控制臺(tái)命令。
 *
 * @return void
 */
public function fire()
{
    // 從 stdin 讀取
    $fd = fopen("php://stdin", "r");
    $rawEmail = "";
    while (!feof($fd)) {
        $rawEmail .= fread($fd, 1024);
    }
    fclose($fd);
}

Wenn Sie die Datei ?ndern müssen, laden Sie Postfix neu, indem Sie service postfix reload ausgeführt werden.

Wir k?nnen jetzt einen neuen Alias ??erstellen, der an unsere Bewerbung übergeben wird. ?ffnen Sie /etc/aliases und fügen Sie die folgende Zeile hinzu:

"messaged/php-mime-mail-parser": "dev-master"

Ausführen newaliases, um die Alias ??-Datenbank wieder aufzubauen.

sendmail

Mit Sendmail sollten Sie zun?chst einen Alias ??in der Datei /etc/aliases erstellen:

use MimeMailParser\Parser;

Ausführen newaliases, um die Alias ??-Datenbank wieder aufzubauen. Stellen Sie als n?chstes sicher, dass der Chmod der Artisan -Datei 755 ist, damit sie ausgeführt werden kann.

Symlink die handwerkliche Datei und Php selbst zu /etc/smrsh

composer create-project laravel/laravel your-project-name --prefer-dist

qmail

Abh?ngig von Ihrer Installation müssen Sie sicherstellen, dass die folgenden Dateien vorhanden sind:

php artisan command:make EmailParserCommand

oder:

/**
 * 控制臺(tái)命令名稱。
 *
 * @var string
 */
protected $name = 'email:parse';

/**
 * 控制臺(tái)命令描述。
 *
 * @var string
 */
protected $description = '解析傳入的電子郵件。';

?ffnen Sie eine Datei und fügen Sie die folgende Zeile als Inhalt hinzu:

/**
 * 執(zhí)行控制臺(tái)命令。
 *
 * @return void
 */
public function fire()
{
    // 從 stdin 讀取
    $fd = fopen("php://stdin", "r");
    $rawEmail = "";
    while (!feof($fd)) {
        $rawEmail .= fread($fd, 1024);
    }
    fclose($fd);
}

Schlussfolgerung

Jedes Framework mit verfügbaren Befehlszeilen -Tools kann Ihre E -Mails verarbeiten. Der hier bereitgestellte Code ist nur ein grundlegendes Setup. Abh?ngig von Ihrem Projekt m?chten Sie m?glicherweise nur zulassen, dass bestimmte E -Mail -Adressen E -Mails an Ihre App senden. Stellen Sie vor dem übergeben an Ihre Bewerbung sicher, dass Sie Ihre E -Mails in Tools wie Postfix gefiltert haben.

Wenn Sie eine Art Ticketing -System verwenden m?chten, k?nnen Sie problemlos versuchen, eine Support -Ticket -ID aus einem E -Mail -Betreff zu extrahieren und auf der E -Mail basierend auf dieser ID mehrere verschiedene Aktionen auszuführen.

Halten Sie die Aufmerksamkeit auf die Protokolldateien des Mailservers. Es gibt Ihnen einige Tipps, wenn die tats?chliche Pipeline in der L?sung der Aufl?sung fehlschl?gt.

(Aus Platzbeschr?nkungen wird ein Teil der FAQs weggelassen. Der ursprüngliche FAQs -Inhalt h?ngt schwach zum Thema des Artikels zusammen, und ein Teil des Inhalts wird mit dem Inhalt des Artikels dupliziert, daher kein Pseudo -Originalverarbeitung wird durchgeführt.)

Das obige ist der detaillierte Inhalt vonRohrleitungs -E -Mails an eine Laravel -Bewerbung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erkl?rung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Hei?e KI -Werkzeuge

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Clothoff.io

Clothoff.io

KI-Kleiderentferner

Video Face Swap

Video Face Swap

Tauschen Sie Gesichter in jedem Video mühelos mit unserem v?llig kostenlosen KI-Gesichtstausch-Tool aus!

Hei?e Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Wie implementiere ich Authentifizierung und Autorisierung in PHP? Wie implementiere ich Authentifizierung und Autorisierung in PHP? Jun 20, 2025 am 01:03 AM

TosecurelyHandleAuthenticationAuthorizationInphp, folge theSteps: 1.Alwayshashpasswordswithpassword_hash () und password_verify (), usePreeParedStatementStopreventsQlinjapitca und StoreuserDatain $ _SessionArtelogin.2.ImplementscaChescescesc

Wie k?nnen Sie Dateien -Uploads in PHP sicher verarbeiten? Wie k?nnen Sie Dateien -Uploads in PHP sicher verarbeiten? Jun 19, 2025 am 01:05 AM

Um Datei -Uploads in PHP sicher zu verarbeiten, besteht der Kern darin, Dateitypen zu überprüfen, Dateien umzubenennen und die Berechtigungen zu beschr?nken. 1. Verwenden Sie Finfo_File (), um den realen MIME -Typ zu überprüfen, und nur bestimmte Typen wie Bild/JPEG sind zul?ssig. 2. Verwenden Sie Uniqid (), um zuf?llige Dateinamen zu generieren und sie im Root-Verzeichnis ohne Web zu speichern. 3.. Begrenzen Sie die Dateigr??e durch Php.ini- und HTML -Formulare und setzen Sie die Verzeichnisberechtigungen auf 0755; 4. Verwenden Sie Clamav, um Malware zu scannen, um die Sicherheit zu verbessern. Diese Schritte verhindern effektiv Sicherheitslücken und stellen sicher, dass der Upload -Prozess des Datei -Uploads sicher und zuverl?ssig ist.

Was sind die Unterschiede zwischen == (loser Vergleich) und === (strenger Vergleich) in PHP? Was sind die Unterschiede zwischen == (loser Vergleich) und === (strenger Vergleich) in PHP? Jun 19, 2025 am 01:07 AM

In PHP ist der Hauptunterschied zwischen == und == die Strenge der Typprüfung. == Die Konvertierung des Typs wird vor dem Vergleich durchgeführt, beispielsweise 5 == "5" gibt true zurück und === fordert an, dass der Wert und der Typ gleich sind, bevor True zurückgegeben wird, z. B. 5 === "5" gibt false zurück. In den Nutzungsszenarien ist === sicherer und sollte zuerst verwendet werden, und == wird nur verwendet, wenn die Typumwandlung erforderlich ist.

Wie führe ich arithmetische Operationen in PHP (, -, *, /, %) aus? Wie führe ich arithmetische Operationen in PHP (, -, *, /, %) aus? Jun 19, 2025 pm 05:13 PM

Die Methoden zur Verwendung grundlegender mathematischer Operationen in PHP sind wie folgt: 1. Additionszeichen unterstützen Ganzfaktoren und Floating-Punkt-Zahlen und k?nnen auch für Variablen verwendet werden. String -Nummern werden automatisch konvertiert, aber nicht für Abh?ngigkeiten empfohlen. 2. Subtraktionszeichen verwenden - Zeichen, Variablen sind gleich, und die Typumwandlung ist ebenfalls anwendbar. 3. Multiplikationszeichen verwenden * Zeichen, die für Zahlen und ?hnliche Zeichenfolgen geeignet sind; 4. Division verwendet / Zeichen, die vermeiden müssen, durch Null zu dividieren, und beachten Sie, dass das Ergebnis m?glicherweise schwimmende Punktzahlen sein kann. 5. Die Modulzeichen k?nnen verwendet werden, um ungerade und sogar Zahlen zu beurteilen, und wenn negative Zahlen verarbeitet werden, stimmen die Restzeichen mit der Dividende überein. Der Schlüssel zur korrekten Verwendung dieser Operatoren liegt darin, sicherzustellen, dass die Datentypen klar sind und die Grenzsituation gut behandelt wird.

Wie k?nnen Sie mit NoSQL -Datenbanken (z. B. MongoDB, Redis) von PHP interagieren? Wie k?nnen Sie mit NoSQL -Datenbanken (z. B. MongoDB, Redis) von PHP interagieren? Jun 19, 2025 am 01:07 AM

Ja, PHP kann mit NoSQL -Datenbanken wie MongoDB und Redis durch bestimmte Erweiterungen oder Bibliotheken interagieren. Verwenden Sie zun?chst den MongoDBPHP -Treiber (installiert über PECL oder Composer), um Client -Instanzen zu erstellen und Datenbanken und Sammlungen zu betreiben, wobei Sie Insertion, Abfrage, Aggregation und andere Vorg?nge unterstützen. Zweitens verwenden Sie die Predis Library oder PHPREDIS-Erweiterung, um eine Verbindung zu Redis herzustellen, Schlüsselwerteinstellungen und -akquisitionen durchzuführen und PHPREDIS für Hochleistungsszenarien zu empfehlen, w?hrend Predis für die schnelle Bereitstellung bequem ist. Beide sind für Produktionsumgebungen geeignet und gut dokumentiert.

Wie bleibe ich mit den neuesten PHP-Entwicklungen und Best Practices auf dem neuesten Stand? Wie bleibe ich mit den neuesten PHP-Entwicklungen und Best Practices auf dem neuesten Stand? Jun 23, 2025 am 12:56 AM

TostaycurrentwithPHPdevelopmentsandbestpractices,followkeynewssourceslikePHP.netandPHPWeekly,engagewithcommunitiesonforumsandconferences,keeptoolingupdatedandgraduallyadoptnewfeatures,andreadorcontributetoopensourceprojects.First,followreliablesource

Was ist PHP und warum wird es für die Webentwicklung verwendet? Was ist PHP und warum wird es für die Webentwicklung verwendet? Jun 23, 2025 am 12:55 AM

PHPBECAMEPOPULARFORWebDevelopmentDuetoitSeaseoflearning, Seamlessintegrationwithhtml, weit verbreitete Hostingsupport, andalargeecosystemincludingFrameWorkelaravelandcmsplatformen -?hnliche WordPress.itexcelsinformlingsformen, Managingusesersions, Interacti

Wie setzen Sie die PHP -Zeitzone? Wie setzen Sie die PHP -Zeitzone? Jun 25, 2025 am 01:00 AM

Tosettherighttimezoneinphp, usedate_default_timezone_set () functionAtthestartofyourScriptWithAvalididentifiersuchas'america/new_york'.1.usedate_default_timezone_set () beeanydate/timeFununtions.2.Alternativ, konfigurieren

See all articles