Extension PHP reconnue, constante de l'extension non définie

L’auteur de ce sujet a trouvé une solution à son problème.
Auteur du sujet

Bonjour à tous !

Cette fois-ci, je change de catégorie, même si c’est plus ou moins lié au développement web.

Suite à une mise à jour de dépendances sur le projet qui m’occupe, je constate un comportement très surprenant sur au moins trois versions de PHP.

Le projet a pour (nouvelle) dépendance l’extension PHP Sockets. Pas de souci à l’installation, Composer ne bute pas sur le fait que l’extension n’est pas activée pour PHP. Tant mieux.

Mais quand Composer tente de lancer les scripts post-installation (notamment le nettoyage du cache de Symfony), il me signale une constante non définie. Surprise : cette constante est SOCKET_EAGAIN, constante qui, si j’en crois la documentation, fait partie de l’extension. Or, celle-ci est bien chargée par PHP : php -r "var_dump(extension_loaded('sockets'));" m’affiche bien bool(true).
Force est de constater que php -r "var_dump(defined('SOCKET_EAGAIN'));" affiche cependant bool(false).

Même cas avec PHP pour Apache, même version (7.1.23). J’ai du coup tenté de voir si c’était simplement celle-ci qui posait problème, et je suis descendu à PHP 7.0.32, même constat. Ah, PHP 7.2.24 est sorti… mais ça ne change rien.

Est-ce que quelqu’un a déjà eu le cas, et si oui, j’ose demander comment le souci a été résolu ?

Merci d’avance  :)

Edit

Bon, apparemment la constante n’existe pas sous Windows, ce serait donc normal. Un des contributeurs sur la dépendance a fusionné une PR il y a environ 5 heures, au moins je peux faire la correction en local avant que la nouvelle version ne soit publiée.

Édité par Ymox

Evitez qu’on vous dise de les lire : FAQ PHP et SymfonyTutoriel WAMP • Cliquez 👍 pour dire merci • Marquez vos sujets résolus

+0 -0
Vous devez être connecté pour pouvoir poster un message.
Connexion

Pas encore inscrit ?

Créez un compte en une minute pour profiter pleinement de toutes les fonctionnalités de Zeste de Savoir. Ici, tout est gratuit et sans publicité.
Créer un compte