pcntl_fork() pour retourner Fatal error: Call to undefined function pcntl_fork()
Je suis en train de fourche d'une ligne de commande exécuter XAMPP processus php à l'aide de pcntl_fork(). Lorsque je lance la commande ci-dessous:
$pid = pcntl_fork();
if($pid == -1){
file_put_contents('testlog.log',"\r\nFork Test",FILE_APPEND);
return 1; //error
}
else if($pid){
return 0; //success
}
else{
file_put_contents($log, 'Running...', FILE_APPEND);
}
J'obtiens:
Fatal error: Call to undefined function pcntl_fork()
Quelqu'un peut-il suggérer comment résoudre ce problème?
Quel est ton OS? Être conseillé, que Windows n'a pas de sous-jacents
Macintosh - Lion
Avez-vous correctement installé
Non, je ne savais pas que c'était quelque chose qui devait être installé séparé de XAMPP.
Il est. Si vous avez installé PHP via MacPorts essayer
*fork()
syscalls.Macintosh - Lion
Avez-vous correctement installé
php5-pcntl
?Non, je ne savais pas que c'était quelque chose qui devait être installé séparé de XAMPP.
Il est. Si vous avez installé PHP via MacPorts essayer
port install php5-pcntl
OriginalL'auteur Ben Pearce | 2013-05-30
Vous devez vous connecter pour publier un commentaire.
Il n'est pas possible d'utiliser la fonction "pcntl_fork" lorsque PHP est utilisé comme module Apache (comme XAMPP). Vous ne pouvez utiliser pcntl_fork en mode CGI ou à partir de la ligne de commande.
À l'aide de cette fonction entraîne dans: "Fatal error: Call to undefined function: pcntl_fork()'
Source: http://php.net/manual/en/function.pcntl-fork.php
curl_multi_exec
si en cours d'exécution à partir d'une page web.OriginalL'auteur Andrea
Pour voir si il est installé, exécutez:
php -i | grep pcntl
Si il est présent et activé, alors la pcntl fonction sont susceptibles désactivé, ce qui semble être la valeur par défaut dans les nouvelles versions de PHP 5.x installe. Pour vérifier, lancez:
php -i | grep disable_functions
Si vous voyez une liste de pcntl_* fonctions, vous aurez besoin de modifier votre php.fichier ini (à l'intérieur de XAMPP) et commentez la ligne
disable_functions=
Je vous recommandons d'utiliser cette distribution de PHP pour mac OS X, qui est la version actuelle et je peux confirmer a la
pcntl
extension.disable_functions
retourwarning
au sujet de la sécurité de la raison, nifatal
une erreur à propos de fonction non définie.OriginalL'auteur Stuart Carnie
pcntl_*
des fonctions, des Processus de prise en charge du Contrôle de PHP n'est pas activé par défaut. Vous devez compiler la version CLI ou CGI (ne pas utilisé en tant que module Apache) de PHP avec--enable-pcntl
option de configuration lors de la compilation de PHP pour activer le Contrôle des Processus de soutien.Actuellement, ce module ne fonctionne pas sur non-plates-formes Unix (Windows).
ref
OriginalL'auteur Nabi K.A.Z.