Salut,
Je suis arrivé à la dernière question de la vidéo sur les namespace, je reçoi toujours l'erreur "Veuillez compléter la fonction..." par contre mon code m’apparaît logique, je l'ai testé chez moi et ça marche, avez vous une idée sur l"erreur ?
tout d'abord voici l’énoncé :
et voila le code :
<?php
namespace Tuto\Controller {
function render($chaine){
return \Tuto\Template\render($chaine, "html");
}
}
namespace Tuto\Template {
function render($chaine, $contentType = "text"){
if(\strtolower($contentType) == "html"){
return "".$chaine."";
} else {
return $chaine;
}
}
}
namespace {
echo \Tuto\Controller\render("Hello World !");
}
?>
Merci
J'ai eu le même soucis.
J'avais comme code
<?php
namespace Tuto\Controller {
function render($chaine){
return \Tuto\Template\render($chaine, "html");
}
}
namespace Tuto\Template {
function render($chaine, $contentType = "text"){
if(\strtolower($contentType) == "html"){
return "".$chaine."";
} else {
return $chaine;
}
}
}
namespace {
echo Tuto\Controller\render(" Hello World ! ");
}
?>
Qui fonctionne très bien en local, le problème au niveau de la regExp c'est qu'elle valide uniquement si l'ont ne met pas de backslashs dans le return du render Controller :
return Tuto\Template\render($chaine, "html");
Si l'on fais ainsi le tuto se valide, mais c'est sensé retourner ceci : Call to undefined function Tuto\Controller\Tuto\Template\render(); à corriger donc.