Il y a actuellement 70 visiteur(s) et 0 membre(s) en ligne.
Devenez membre privilégié en cliquant ici
Pages vues depuis 20/04/2015 : 23 826 419
Updated Apr 17
Index du forum »» Road map développement »» traduction
function translate($phrase, $args=null) {
$params = (func_num_args() === 2) ? (array)$args : array_slice(func_get_args(), 1);
$tmp = translate_pass1($phrase, $params);
!!!!!include!!!!!("language/lang-mods.php");
return (htmlentities($tmp,ENT_QUOTES|ENT_SUBSTITUTE|ENT_HTML401,cur_charset));
}
function translate_pass1($phrase, $params=null) {
settype($englishname,'string');
switch($phrase) {
case "je suis un phrase avec {0} argements {1}": $tmp="je suis une phrase avec {0} arguments {1}"; break;
case "$englishname": $tmp="$englishname"; break;
default: $tmp=$phrase; break;
}
if (is_array($params))
$locale = language_iso(1,0,0);
return \MessageFormatter::formatMessage($locale, $tmp, $params);
else
return $tmp;
translate("Désolé, votre mot de passe doit faire au moins").' '.$minpass.' '.translate("caractères")
translate("je suis une phrase avec {0} arguments {1}", 5, "!!!");
translate("Désolé, votre mot de passe doit faire au moins {0} caractères", 12);
translate("je suis une phrase sans argument");
function __($phrase, $args = null)
{
if (! $phrase) return '';
return translate($phrase, $args);
}
echo __('test pour voir c\'est {0}', 'cool');
// return les translations du front
function __($phrase, $args = null)
{
if (! $phrase) return '';
return translate($phrase, $args);
}
// return les translations admin
function __a($phrase, $args = null)
{
if (! $phrase) return '';
return adm_translate($phrase, $args);
}
// return les translation d'un module
function __m($module, $phrase, $args = null)
{
if (! $phrase) return '';
$func = $module.'_translate';
return call_user_func_array($func, [$phrase, $args]);
}
function geoloc_translate($phrase, $args) {
//
$params = (func_num_args() === 2) ? (array)$args : array_slice(func_get_args(), 1);
if (is_array($params)) {
$locale = language_iso(1,0,0);
$phrase = \MessageFormatter::formatMessage($locale, $phrase, $params);
}
return (htmlentities($phrase,ENT_QUOTES|ENT_SUBSTITUTE|ENT_HTML401,cur_charset));
}
echo __m('geoloc', 'test du module geoloc pour voir, {0}', 'good');
function geoloc_translate($phrase, $args) {
// le tableau des traduction
$messages = array(
'un' => 'juste un',
'deux' => 'pourquoi deux',
'trois' => 'je suis le 3 et je gagne',
'module {0}' => 'ce module {0} est vraiment génial',
);
// ont compte le nombre d'argument et on créer un tableau de paramètre key=>value
$params = (func_num_args() === 2) ? (array)$args : array_slice(func_get_args(), 1);
// ont regarde si la phrase existe dans le tableau messages
// si elle existe alors on la recupere
// sinon ont affiche la phrase original
if (array_key_exists($phrase, $messages)) {
$message = $messages[$phrase];
} else {
$message = $phrase;
}
// si params est un tableau
if (is_array($params)) {
// ont recupère la locale
$locale = language_iso(1,0,0);
// ont formate la phrase avec les arguments
$message = \MessageFormatter::formatMessage($locale, $message, $params);
}
// ont retourne la pharse
return (htmlentities($message,ENT_QUOTES|ENT_SUBSTITUTE|ENT_HTML401,cur_charset));
}
// return les translation d'un module
function __m($module, $phrase, $args = null)
{
if (! $phrase) return '';
$func = $module.'_translate';
return call_user_func_array($func, [$phrase, $args]);
}
php makelang