更改PHP echo或print中的语言
请帮我解决这个问题。我不确定这是否可能!我需要一个小的棘手的解决方案更改PHP echo或print中的语言,php,Php,请帮我解决这个问题。我不确定这是否可能!我需要一个小的棘手的解决方案 <?php include_once"system/hijri_calendar.php"; echo (new hijri\datetime()) -> format ('_j'); ?> 上面的代码给了我一个英文整数(1…30)的输出 现在,在echo之后,我想把这门英语改成其他语言。 例如: 上面的代码给了我一个输出1 我想将此输出(1)更改为其他语言(১) 如果我没
<?php include_once"system/hijri_calendar.php";
echo (new hijri\datetime()) -> format ('_j');
?>
上面的代码给了我一个英文整数(1…30)的输出
现在,在echo之后,我想把这门英语改成其他语言。
例如:
上面的代码给了我一个输出1
我想将此输出(1)更改为其他语言(১) 如果我没弄错,您正在尝试根据值从一个数组中获取值,并从另一个数组中获取键。您可以使用从基于值的数组中查找键
<?php
$en = array(1,2,3,4,5,6,7,8,9,0);
$bn = array('১','২','৩','৪','৫','৬','৭','৮','৯','০');
var_dump(array_search(5, $en)); // gives the key 4 from $en where value is 5
// array keys strart with 0
// so you can do
var_dump($bn[array_search(5, $en)]); // gives ৬
又快又脏:
function __($number, $lang)
{
if ($lang == 'en') {
return $number;
}
$translate = array();
$translate['bn'] = array(
'1' => '১',
'2' => '২',
'3' => '৩',
'4' => '৪',
'5' => '৫',
'6' => '৬',
'7' => '৭',
'8' => '৮',
'9' => '৯',
'0' => '০'
);
$translate['th'] = array(
'1' => '๑',
'2' => '๒',
'3' => '๓',
'4' => '๔',
'5' => '๕',
'6' => '๖',
'7' => '๗',
'8' => '๘',
'9' => '๙',
'0' => '๐'
);
$digits = str_split($number,1);
$return_this = '';
foreach($digits as $digit){
$return_this .= $translate[$lang][$digit];
}
return $return_this;
}
echo __('905','bn');
分解,如果lang是en,你得到你所给的,如果bn或th,它将分解数字,并使用请求的数组重建它
基本上我就是这样做的,除了每种语言的数组都在它们自己的文件中。我稍微更改了数组以简化事情。如果数组按数字顺序排列(因此我将0元素移动到数组中的位置0),则可以使用
$bn = array('০','১','২','৩','৪','৫','৬','৭','৮','৯');
$in = "18";
$out = "";
foreach ( str_split($in) as $ch ) {
$out .= $bn[$ch];
}
echo $out;
也许我不能让你理解。忘记我在问题中提到的示例和数组。第一个php代码给了我整数的英文输出。现在我想更改这是其他语言。我理解,但它不会更改我在问题中给出的第一个php代码的输出。我稍微编辑了我的问题。请看一看好。@HASNAT您的编辑删除了获取转换值所需的数组。