Comment enable_dl configuration dans php peut être utile?

Je passais en revue php.ini et j’ai trouvé le paramètre suivant enable_dl avec une description étrange:

Cette directive n’est vraiment utile que dans la version du module Apache de PHP. Vous pouvez activer le chargement dynamic des extensions PHP avec dl () sur et par serveur virtuel ou par répertoire.

La principale raison pour laquelle le chargement dynamic est désactivé est la sécurité. Avec le chargement dynamic, il est possible d’ignorer toutes les ressortingctions open_basedir. La valeur par défaut est d’autoriser le chargement dynamic, sauf en mode sans échec. En mode sans échec, il est toujours impossible d’utiliser dl ().

Je cours php sur apache et je suis curieux de savoir comment ce paramètre peut être utile pour moi. La description ci-dessus n’est pas vraiment claire pour moi, alors je serais reconnaissant si quelqu’un peut le développer.

Les modules PHP (extensions) ne peuvent être chargés que dans la phase de démarrage de PHP. Par exemple, il n’est pas possible de les charger avec des fichiers .user.ini . La directive d’ extension par exemple est php.ini uniquement .

Ceci est un indice – historiquement, les fichiers .user.ini n’étaient pas dans le kernel, mais les parameters .htaccess par répertoire pour SAPI pour Apache mod_php.

Pour contourner cette ressortingction dans le passé, la fonction dl() avait été introduite pour charger dynamicment les extensions à l’exécution. Cependant seulement si activé, donc la directive enable_dl .

Cependant, la prise en charge de dl a été largement désactivée dans les SAPI PHP actuels. Elle est uniquement disponible dans CLI et Embed.

Comme vous n’avez pas dit pourquoi vous êtes curieux à propos de dl() la meilleure réponse que je puisse vous donner est que cela n’est utile que pour des raisons ésotériques. Très probablement, il est même inutile avec le SAPI avec lequel vous voulez l’utiliser (vous n’avez pas partagé le nom SAPI, mais je suppose que ce n’est pas CLI ni Embed).