web-dev-qa-db-fra.com

Laravel 5: erreur d'analyse: erreur de syntaxe, '?' Inattendu, variable attendue (T_VARIABLE)

Sur mon serveur local, tout fonctionnait bien en utilisant le serveur de messagerie mailtrap comme serveur smtp. mais lorsque mon site Web est sur un serveur en direct et que j'essaie de réinitialiser le mot de passe (mot de passe oublié), la capture d'écran d'erreur suivante est jointe. J'utilise hostgators cpanels intégré smtp. plus de détails que je fournirai si nécessaire . enter image description here

9
TrueCode

Vous devez installer PHP version 7.1 car les types nullables ont été introduits dans 7.1 :

?string $value

Et à partir des documents Laravel :

Vous devrez vous assurer que votre serveur répond aux exigences suivantes:

PHP> = 7.1.3

21
Alexey Mezenin

Pour php7.0 uniquement

Si votre serveur ne dispose pas de php 7.1 et supérieur et que vous êtes limité à utiliser php7.0, procédez comme suit:

  1. Supprimer le dossier du fournisseur
  2. Supprimer le fichier composer.lock
  3. Ajoutez ceci au fichier composer.json sous config

    "platform": {
       "php": "7.0.0"
    }
    

De plus, assurez-vous que PHP sous require est définie sur 7.0.0 comme indiqué ci-dessous dans config.platform.php:

    "config": {
        "platform": {
            "php": "7.0.0"
        }
     }
  1. Exécutez composer installer à l'aide de CMD

Cela permettra désormais de s'assurer que seules les dépendances compatibles avec php7.0 sont installées.

3
mutiemule