Argument 1 passé à Twig_Filter::__construct() doit être une instance de la chaîne, chaîne donnée
J'ai un problème avec TWIG. Ce code fonctionne à l'école, mais absolument pas avec mon ordinateur portable. J'ai essayé avec un code simple, mais j'ai l'erreur:
Catchable fatal error: Argument 1 passé à Twig_Filter::__construct() doit être une instance de string, string donné, appelé dans /opt/lampp/htdocs/webalizer/projetSilex/vendor/twig/twig/lib/Twig/Extension/Core.php sur la ligne 139 et définie dans /opt/lampp/htdocs/webalizer/projetSilex/vendor/twig/twig/lib/Twig/Filter.php sur la ligne de 35
J'utilise le php 5.6 /SILEX 2.0 /Twig 2.0
Merci pour votre aide.
Mon code est très simple, mais ne fonctionne pas:
require_once __DIR__.'/vendor/autoload.php';
$app = new Silex\Application();
$app->register(new Silex\Provider\TwigServiceProvider(), array(
'twig.path' => __DIR__.'/views',
));
$app->get('/', function(){
return "hello";
});
$app->get('/hello/{name}', function($name)use($app){
return $app['twig']->render('hello.twig',
array("name"=>$name
));
});
$app->run();>
Vous ne pouvez pas le type de déclarer des types scalaires en PHP5. secure.php.net/manual/en/...
vous devez passer une chaîne de caractères, pas une chaîne de caractères, c'est très clair 😉 (compositeur vous avertit de l'installation de Twig 2.0 avec Php 5.6 non?)
Double Possible de Erreur lors du passage de la chaîne sur cette méthode de type hinting
vous devez passer une chaîne de caractères, pas une chaîne de caractères, c'est très clair 😉 (compositeur vous avertit de l'installation de Twig 2.0 avec Php 5.6 non?)
Double Possible de Erreur lors du passage de la chaîne sur cette méthode de type hinting
OriginalL'auteur Ben | 2017-01-26
Vous devez vous connecter pour publier un commentaire.
@CharlotteDunois l'a souligné, mais Twig 2.0 exige >=PHP7.0, si dans votre environnement (php 5.6) vous ne pouvez pas utiliser Twig 2.0. À partir de la Brindille de la documentation officielle:
Avis que, pour PHP5.x direction générale, vous avez encore de Rameau 1.x aviable
OriginalL'auteur mTorres
juste mes 2 cents. Je ne pouvais pas mettre à niveau la version de PHP (hébergement mutualisé), donc j'ai dû changer de Rameau version dans mon colis.json à utiliser 1.x version.
Remplacer cette ligne:
"symfony/twig-bridge": "~2.8|^3.0"
, ->"symfony/twig-bridge": "~2.8|3.0.*",
ensuite, j'ai ajouté cette ligne:
et evething a fonctionné correctement sur le serveur PHP v 5.6
OriginalL'auteur Carlos Bonavia