Browsing this Thread:
1 Anonymous Users
erreur HEREDOC sur serveur 1and1.com |
||
|---|---|---|
|
Nouveau
Joined:
2004/6/11 10:16 Group:
Utilisateurs Enregistrés Posts:
1
Level : 1; EXP : 0
HP : 0 / 0 MP : 0 / 0 ![]() |
J'ai une question pour les pros ...
J'utilise la synthaxe "heredoc" courrament et je viens de tomber sur un serveur qui génère une erreur quand j'insère une valeur provenant d'une fonction de "codeIgniter" {$this->lang->line("app_kw_lang_en")}. Ce n'est pas une varibale, certe, mais les différants serveur ou j'ai installé des solutions maison ne se sont jamais plein ... Et si je remplace ce style par des print ou des echo "standard" ca va. Alors, ma question, quel élément de configuration ( PHP ou APACHE ) peu causer cette restriction ? erreur généré : Parse error: syntax error, unexpected '(', expecting '}' in /homepages/10/d310938803/htdocs/system/application/views/admin/catalog_home.php on line 56 fragement de code de la ligne 56 : print << {$this->lang->line('app_kw_lang_en')} {$this->lang->line('app_kw_lang_fr')} CODE; merci
Posted on: 12/15 9:58
|
|
Transfer
|
||
Re: erreur HEREDOC sur serveur 1and1.com |
||
|---|---|---|
|
Nouveau
Joined:
2008/9/1 10:35 From Montréal
Group:
Utilisateurs Enregistrés Posts:
26
Level : 3; EXP : 83
HP : 0 / 70 MP : 8 / 418 ![]() |
__"Ce n'est pas une varibale, certe, mais les différants serveur ou j'ai installé des solutions maison ne se sont jamais plaint"__
vraiment ? quelqu'un confirme ? je croyais que ce n'était pas possible je cite php.net : "Note: Les appels aux fonctions, méthodes, variables statiques de classes, ainsi qu'aux constantes de classes à l'intérieur de {$} fonctionnent depuis PHP 5. Cependant, la valeur accédée sera interprétée comme le nom d'une variable dans le scope duquel la chaîne est définie. L'utilisation de simples accolades ({}) ne fonctionnera pas pour accéder à la valeur retournée par les fonctions, méthodes ou les valeurs des constantes et des variables statiques de classes. " autrement dit - il me semblait que - l'on ne peut pas utiliser le retour d'une fonction autrement que comme une... variable. un exemple ? function test( $string ){ return $string; } $foo = 'test'; $chaine =<< --------------------------------- ne marche pas : {test('tata')} marche {$foo('tata')} EOT; echo $chaine; je serais curieux d'en apprendre plus là dessus... tiens nous au courant.
Posted on: 12/15 13:53
|
|
Transfer
|
||
Re: erreur HEREDOC sur serveur 1and1.com |
||
|---|---|---|
|
Nouveau
Joined:
2008/11/17 13:22 Group:
Utilisateurs Enregistrés Posts:
8
Level : 1; EXP : 73
HP : 0 / 18 MP : 2 / 97 ![]() |
J'ai essayé le code ci-dessous avec PHP 5.2.11-2 (debian sid) et je n'ai pas eu de problème.
Je regarderait plutôt la version de PHP. C'est soit un problème de version, soit un caractère non-imprimable qui est détecté (par exemple un caractère UTF-8 nonbreakspace)
<?php
Posted on: 12/16 16:49
|
|
Transfer
|
||
You can view topic.
You cannot start a new topic.
You cannot reply to posts.
You cannot edit your posts.
You cannot delete your posts.
You cannot add new polls.
You cannot vote in polls.
You cannot attach files to posts.
You cannot post without approval.






Transfer
10th Sep

