Maison >php教程 >PHP开发 >Ajouter l'extension pcntl à php dans le système Linux

Ajouter l'extension pcntl à php dans le système Linux

高洛峰
高洛峰original
2016-12-22 16:03:161525parcourir

L'extension pcntl peut prendre en charge les opérations multithread de PHP (linux uniquement)

Il était initialement nécessaire de recompiler PHP et d'ajouter --enable-pcntl à l'invite de configuration ultérieure.

Parce que PHP est installé en utilisant yum, la méthode ci-dessus ne peut pas être utilisée

Ce qui suit présente un moyen d'ajouter dynamiquement des extensions à php phpize

1 Tout d'abord, regardez. dans le répertoire où se trouve la commande phpize ( ps : Mon répertoire/usr/bin/phpize)

S'il n'est pas trouvé, effectuez l'installation

yum install php53_devel  (ps:请注意自己的版本)

Installation terminée. La commande phpize sera générée

2. Allez sur php.net pour télécharger la version correspondante du fichier source php

Prenons php-5.3.17 comme exemple. décompression, entrez le module correspondant Suivant

cd ext/pcntl
#先执行phpize
/usr/bin/phpize
./configure --with-php-config=/usr/bin/php-config  (ps:请正确的指定php-config的目录)
#编译、安装
make && make install

Une erreur s'est produite à ce moment

./configure compilé normalement, mais make a fait un erreur
erreur : 'PHP_FE_END' non déclaré ici (pas dans une fonction)

Solution :

Il y a une erreur dans le code source, entrez dans le répertoire php-5.3.17

sed -i 's |PHP_FE_END|{NULL,NULL,NULL}|' ./ext/**/*.c
sed -i 's|ZEND_MOD_END|{NULL,NULL,NULL}|' ./ext/**/*.c

Refaire && make install

3. Compiler Une fois terminé, un fichier pcntl.so sera généré. Dans le répertoire du modèle php

éditez /etc/php.ini et ajoutez

extension=pcntl.so

4. Redémarrez Apache

. service httpd restart

5. Testez si l'installation est réussie

<?php
  echo pcntl_fork();
?>

Sortie : 23165


Pour plus d'articles sur l'ajout de l'extension pcntl à php dans le système Linux, veuillez faire attention au site Web chinois de PHP !

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn