web-dev-qa-db-fra.com

Développement de composants PHP Contrôle de version

J'ai développé un composant et j'ai essayé de trouver des informations sans que mon composant vérifie la version de PHP avant l'installation. Si PHP est supérieur à 7, puis installez-le, mais si PHP est inférieur à 7 (comme 5.6), indiquez une erreur PHP 7 est requis, puis arrêtez l'installation.

Je me suis déjà dit que cela irait dans script.php dans le contrôle en amont, mais j'ai du mal à trouver quelque chose à utiliser pour faire la vérification.

Aucune suggestion?

3
Steve Voorhees

Beaucoup de composants ont un contrôle comme ça. Voici le haut du script d'installation des outils d'administration, par exemple.

protected $minimumPHPVersion = '5.3.3';

public function preflight($type, $parent)
    {
        // Check the minimum PHP version
        if (!version_compare(PHP_VERSION, $this->minimumPHPVersion, 'ge'))
        {
            $msg = "<p>You need PHP $this->minimumPHPVersion or later to install this package</p>";
            JLog::add($msg, JLog::WARNING, 'jerror');

            return false;
        }
....etc 

Comme vous pouvez le voir, il utilise à la fois la constante principale de la version et la fonction principale de comparaison des versions.

Lectures complémentaires:

PHP Doc concernant l’existence de constante PHP_VERSION

PHP Doc sur l'utilisation de la comparaison de version

5
jamesgarrett