{"id":24054,"date":"2021-05-11T16:57:00","date_gmt":"2021-05-11T13:57:00","guid":{"rendered":"https:\/\/themewp.inform.click\/?p=24054"},"modified":"2021-10-18T02:45:03","modified_gmt":"2021-10-17T23:45:03","slug":"verwenden-von-cron-schedule-in-laravel-zur-automatisierung-von-aufgaben","status":"publish","type":"post","link":"https:\/\/themewp.inform.click\/de\/verwenden-von-cron-schedule-in-laravel-zur-automatisierung-von-aufgaben\/","title":{"rendered":"Verwenden von Cron Schedule in Laravel zur Automatisierung von Aufgaben"},"content":{"rendered":"<p>Cron-Job ist n\u00fctzlich, um unsere Aufgabe zum angegebenen Zeitpunkt in regelm\u00e4\u00dfigen Abst\u00e4nden zu automatisieren. Laravel wird mit einer Funktion zur Aufgabenplanung geliefert, die den Cron-Zeitplan super einfach macht. In der Vergangenheit mussten wir f\u00fcr jeden Cron-Job einen separaten Eintrag hinzuf\u00fcgen. In Laravel m\u00fcssen wir nur einen Befehl hinzuf\u00fcgen und alle unsere Cron-Jobs werden automatisch ausgef\u00fchrt. Es ist nicht erforderlich, f\u00fcr jede Aufgabe einen separaten Eintrag hinzuzuf\u00fcgen. In diesem Artikel untersuchen wir die Verwendung von Cron-Zeitpl\u00e4nen in Laravel, die uns helfen, unsere Aufgaben zu automatisieren.<\/p>\n<h3>Warum m\u00fcssen wir Cron ausf\u00fchren?<\/h3>\n<p>Es gibt mehrere Beispiele, die wir erw\u00e4hnen k\u00f6nnen, wo wir einen Cron ausf\u00fchren m\u00fcssen. M\u00f6glicherweise betreiben Sie einen Online-Shop und m\u00f6chten Ihren Benutzern Werbeangebote senden. Oder Sie haben eine Mitgliedschafts-Website und m\u00fcssen den Benutzern die Erinnerungs-E-Mail \u00fcber den Verl\u00e4ngerungszeitraum des Abonnements senden. Dies sind die beiden Beispiele, in denen wir den Cron verwenden k\u00f6nnen. Was wir tun, ist, ein Programm zu schreiben, das diese Aufgabe ausf\u00fchren kann, und einen Cron daf\u00fcr zu setzen. Ihr Server sucht nach der f\u00fcr cron angegebenen Zeit und f\u00fchrt das Programm automatisch aus, wenn diese Zeit erreicht ist. Wir m\u00fcssen nicht auf die Uhr schauen und das Programm manuell ausf\u00fchren.<\/p>\n<p>Dieser Prozess macht unser Leben einfach. Wir k\u00f6nnen uns auf unsere anderen wichtigen Dinge konzentrieren und Zeit in eine kluge Sache investieren.<\/p>\n<h3>Cron-Zeitplan in Laravel<\/h3>\n<p>Nehmen wir f\u00fcr unseren Artikel ein Beispiel aus der Praxis. Nehmen wir an, wir haben eine Reihe von Benutzern in unserer Laravel-Datenbank. Jeden Mitternacht m\u00fcssen wir eine E-Mail an alle Benutzer senden, in denen unser neues Werbeangebot beschrieben wird. Dadurch werden unsere Benutzer \u00fcber neue Angebote informiert und Ihre Verk\u00e4ufe k\u00f6nnen mehr Aufmerksamkeit erhalten.<\/p>\n<p>Wir gehen davon aus, dass Sie alle Ihre Benutzerinformationen in der Tabelle &#8218;Benutzer&#8216; gespeichert haben. Wir erhalten die E-Mails der Benutzer aus dieser Tabelle und senden ihnen eine E-Mail. Nat\u00fcrlich m\u00fcssen wir einen Code schreiben, der jede Mitternacht ausgef\u00fchrt werden soll.<\/p>\n<p>\u00d6ffnen Sie die <code>app\/Console\/Kernel.php<\/code>Datei in Ihrem Editor und f\u00fcgen Sie das Benutzermodell und die Mail-Fassade zur Datei hinzu.<\/p>\n<pre><code>&lt;?php\n\u00a0\nnamespace AppConsole;\n\u00a0\nuse IlluminateConsoleSchedulingSchedule;\nuse IlluminateFoundationConsoleKernel as ConsoleKernel;\nuse AppUser; \/\/ User model\nuse Mail; \/\/ Mail Facade\n\u00a0\nclass Kernel extends ConsoleKernel\n{\n\u00a0\u00a0\u00a0\u00a0....<\/code><\/pre>\n<p><code>Kernal<\/code>-Klasse hat eine Methode, <code>schedule<\/code>bei der wir einen oder mehrere Zeitpl\u00e4ne schreiben m\u00fcssen. Da wir unseren Benutzern eine E-Mail senden m\u00fcssen, schreiben wir den Code wie folgt.<\/p>\n<pre><code>&lt;?php\n\u00a0\nnamespace AppConsole;\n\u00a0\nuse IlluminateConsoleSchedulingSchedule;\nuse IlluminateFoundationConsoleKernel as ConsoleKernel;\nuse AppUser;\nuse Mail;\n\u00a0\nclass Kernel extends ConsoleKernel\n{\n\u00a0\u00a0\u00a0\u00a0....\n\u00a0\n\u00a0\u00a0\u00a0\u00a0\/**\n\u00a0\u00a0\u00a0\u00a0\u00a0* Define the application's command schedule.\n\u00a0\u00a0\u00a0\u00a0\u00a0*\n\u00a0\u00a0\u00a0\u00a0\u00a0* @param\u00a0 IlluminateConsoleSchedulingSchedule\u00a0 $schedule\n\u00a0\u00a0\u00a0\u00a0\u00a0* @return void\n\u00a0\u00a0\u00a0\u00a0\u00a0*\/\n\u00a0\u00a0\u00a0\u00a0protected function schedule(Schedule $schedule)\n\u00a0\u00a0\u00a0\u00a0{\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0$schedule-&gt;call(function() {\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0$arr_users = User::all();\n\u00a0\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0if(count($arr_users) &gt; 0) {\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0foreach ($arr_users as $user) {\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0$name = $user-&gt;name;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0$email = $user-&gt;email;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0$data = array(\"name\" =&gt; $name, \"body\" =&gt; \"This is our new promotional offer\");\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0Mail::send('emails.mail', $data, function($message) use ($name, $email) {\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0$message-&gt;to($email, $name)\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0-&gt;subject('New Offer Launched');\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0$message-&gt;from('admin@artisansweb.net', 'Artisans Web');\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0});\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0}\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0}\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0})-&gt;daily();\n\u00a0\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\/\/ tou can add more schedules here\n\u00a0\u00a0\u00a0\u00a0}\n\u00a0\u00a0\u00a0\u00a0....<\/code><\/pre>\n<p>Im obigen Code nehmen wir Benutzer aus der Datenbank und senden ihnen eine E-Mail mit der Sendemethode der Mail-Fassade. Hier m\u00fcssen wir eine <code>mail.blade.php<\/code>Datei unter dem <code>resources\/views\/emails<\/code>Verzeichnis erstellen .<\/p>\n<p><strong>mail.blade.php<\/strong><\/p>\n<pre><code>Hi &lt;strong&gt;{{ $name }}&lt;\/strong&gt;,\n\u00a0\n&lt;p&gt;{{ $body }}&lt;\/p&gt;<\/code><\/pre>\n<p>Da unsere Aufgabe darin besteht, um Mitternacht eine E-Mail zu senden, haben wir die <code>daily()<\/code>Methode verwendet. Laravel bietet verschiedene Zeitplanfrequenzoptionen, die Sie auf der <a href=\"https:\/\/laravel.com\/docs\/5.7\/scheduling#schedule-frequency-options\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">Dokumentationsseite erhalten<\/a>.<\/p>\n<h3>Cron-Eintrag zu Ihrem Server hinzuf\u00fcgen<\/h3>\n<p>Schlie\u00dflich, um diesen Cron-Job auf einem Server zu setzen, sollten Sie unten den Cron-Eintrag zu Ihrem Server hinzuf\u00fcgen.<\/p>\n<pre><code>* * * * * cd \/path-to-your-project &amp;&amp; php artisan schedule:run &gt;&gt; \/dev\/null 2&gt;&amp;1<\/code><\/pre>\n<p>Stellen Sie sicher, dass Sie den Pfad Ihres Projekts richtig eingestellt haben. Dieser Cron ruft den Laravel-Befehlsplaner jede Minute auf. Es f\u00fchrt automatisch den Befehl schedule:run aus und wertet Ihre geplanten Aufgaben aus und f\u00fchrt die f\u00e4lligen Aufgaben aus.<\/p>\n<p>Wir hoffen, dass Sie vielleicht gelernt haben, wie Sie Cron-Zeitplan in Laravel verwenden und Ihre Aufgaben automatisieren. Wir w\u00fcrden gerne Ihre Meinung im Kommentarbereich unten h\u00f6ren.<\/p>\n<h4>Zum Thema passende Artikel<\/h4>\n<ul>\n<li><a href=\"https:\/\/themewp.inform.click\/de\/senden-von-e-mails-ueber-den-gmail-smtp-server-in-laravel\/\" title=\"Senden von E-Mails \u00fcber den Gmail-SMTP-Server in Laravel\">Senden von E-Mails \u00fcber den Gmail-SMTP-Server in Laravel<\/a><\/li>\n<li><a href=\"https:\/\/themewp.inform.click\/de\/so-verwenden-sie-laravel-ereignisse-und-listener-in-ihrer-anwendung\/\" title=\"So verwenden Sie Laravel-Ereignisse und -Listener in Ihrer Anwendung\">So verwenden Sie Laravel-Ereignisse und -Listener in Ihrer Anwendung<\/a><\/li>\n<li><a href=\"https:\/\/themewp.inform.click\/de\/so-verwenden-sie-laravel-passport-fuer-die-rest-api-authentifizierung\/\" title=\"So verwenden Sie Laravel Passport f\u00fcr die REST-API-Authentifizierung\">So verwenden Sie Laravel Passport f\u00fcr die REST-API-Authentifizierung<\/a><\/li>\n<\/ul>\n<p><div id=\"PostUnique_PostSource\" style=\"padding-top: 50px\">Aufnahmequelle:  <a target=\"_blank\" rel=\"noopener nofollow\" href=\"\/\/artisansweb.net\" class=\"external external_icon\">artisansweb.net<\/a><\/div><\/p>\n","protected":false},"excerpt":{"rendered":"<p>In diesem Artikel untersuchen wir die Verwendung von Cron Scedule in Laravel, um Ihre Aufgaben zu automatisieren. Cron-Jobs sind n\u00fctzlich, um den Prozess zu automatisieren, was uns viel erspart<\/p>\n","protected":false},"author":1,"featured_media":22224,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":"","_wp_rev_ctl_limit":""},"categories":[496],"tags":[845],"class_list":["post-24054","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-laravel","tag-affiai-de"],"_links":{"self":[{"href":"https:\/\/themewp.inform.click\/de\/wp-json\/wp\/v2\/posts\/24054","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/themewp.inform.click\/de\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/themewp.inform.click\/de\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/de\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/de\/wp-json\/wp\/v2\/comments?post=24054"}],"version-history":[{"count":0,"href":"https:\/\/themewp.inform.click\/de\/wp-json\/wp\/v2\/posts\/24054\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/de\/wp-json\/wp\/v2\/media\/22224"}],"wp:attachment":[{"href":"https:\/\/themewp.inform.click\/de\/wp-json\/wp\/v2\/media?parent=24054"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/themewp.inform.click\/de\/wp-json\/wp\/v2\/categories?post=24054"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/themewp.inform.click\/de\/wp-json\/wp\/v2\/tags?post=24054"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}