Führen Sie eine PHP-Aufgabe asynchron aus

Um eine PHP-Aufgabe asynchron auszuführen, können Sie die pcntl_fork()-Funktion verwenden, um einen neuen Prozess zu erstellen, der die Aufgabe parallel zum Hauptskript ausführt. Dadurch kann das Hauptskript fortlaufend ausgeführt werden, ohne dass es auf die Beendigung der Aufgabe wartet.

<?php

// Starten Sie die Aufgabe als neuen Prozess
$pid = pcntl_fork();

if ($pid == -1) {
  // Fehler: Forken nicht möglich
  exit();
} elseif ($pid) {
  // Elternprozess
  // Führen Sie hier andere Aufgaben aus, während die Aufgabe im Hintergrund läuft
} else {
  // Kindprozess
  // Führen Sie hier die Aufgabe aus
  // Beenden Sie mit exit() sobald die Aufgabe abgeschlossen ist
}

Hinweis: Dies wird nicht für lange laufende Aufgaben empfohlen. Für diesen Fall können Sie das "php-resque" Bibliothek verwenden, die eine PHP-Portierung der resque-Bibliothek von Ruby ist.