Parse error: syntax error, unexpected '<<' (T_SL)

Résolu
otaku-boy Messages postés 109 Statut Membre -  
Reivax962 Messages postés 3742 Statut Membre -
Bonjour,
Voici mon code :
<?php
$t=<<<HTML
  <!doctype html>
   <html>
    <head>
     <title>Table 12</title>
     <meta charset="UTF-8">
    </head>
    <body>
     <p> Juste un paragraphe </p>
    </body>
   </html>
HTML;
echo $t;


J'ai bien vérifié le fait qu'il n'y ait AUCUN espace à côté de mes marqueurs HTML ... Pourtant j'ai l'erreur (à la ligne 3) qui est en titre.
Je vous remercie d'avance pour votre aide.

3 réponses

Stanislas Poisson Messages postés 775 Statut Membre 66
 
Bonjour,

Tu est sur d'être dans la bonne section : PHP ?
Car le code que tu met n'est pas du tout du php mais plus du BASH.

en php ca donnerais :
<?php
$t='<!doctype html>
   <html>
    <head>
     <title>Table 12</title>
     <meta charset="UTF-8">
    </head>
    <body>
     <p>Juste un paragraphe</p>
    </body>
   </html>';
echo $t;
0
Reivax962 Messages postés 3742 Statut Membre 1 011
 
Bonjour,

Sa syntaxe existe bel et bien en Php.
Regarde par là : https://www.php.net/manual/fr/language.types.string.php#language.types.string.syntax.heredoc

Xavier
0
Reivax962 Messages postés 3742 Statut Membre 1 011
 
Bonjour,

Essaie de mettre deux espaces autour du premier signe égal :
$t = <<<HTML

Vu le message d'erreur, on dirait qu'il a séparé =< et <<

Xavier
0
otaku-boy Messages postés 109 Statut Membre 140
 
Bonjour,
Tout d'abord, merci de ta réponse mais ça ne change rien .
0
otaku-boy Messages postés 109 Statut Membre 140
 
J'ai rien compris ...
J'ai supprimé le fichier dans lequel j'étais et en ai créé un autre et ça marche ...
0
Reivax962 Messages postés 3742 Statut Membre 1 011
 
Tu avais probablement un problème avec des caractères invisibles. Des retours à la ligne ou autres...
0
yg_be Messages postés 24281 Statut Contributeur Ambassadeur 1 584
 
j'ai testé, et cela fonctionne tel quel chez moi.
0