$lang_default = 'en';
$lang_map = ['ru'=>0,'en'=>1];
$words =
[
'Один'=>['Один','One']
,'Два'=>['Два','Two']
];
function L($word,$lang=false){
global $lang_default,$words,$lang_map;
$lang = (!!$lang ? $lang : $lang_default);
return (isset($words[$word][$lang_map[$lang]]) ? $words[$word][$lang_map[$lang]] : $word);
}
echo "Abama {${L('Один')}}";
echo <<<EOD
по идее должно вывести результат выполнения функции L('Один') но не выводит: {${L('Один')}}
EOD;
В чем подвох, если в функции вместо return поставить echo то результат выводится (то есть функция вызывается) но он выводится до строки куда происходит вставка что в принципе логично... Пожалуйста подскажите