En PHP/7, vous pouvez utiliser une fonction anonyme à auto-appel pour accomplir une encapsulation simple et empêcher la portée globale de polluer avec des variables globales aléatoires :
return (function () {
// Local variables (not exported)
$current_time = time();
$reference_time = '01-01-1970 00:00';
return "seconds passed since $reference_time GMT is $current_time";
})();
Une syntaxe alternative pour PHP/5.3+ serait :
return call_user_func(function(){
// Local variables (not exported)
$current_time = time();
$reference_time = '01-01-1970 00:00';
return "seconds passed since $reference_time GMT is $current_time";
});
Vous pouvez ensuite choisir le nom de la variable comme d'habitude :
$banner = require 'test.php';