本地语言的最新更新
Latest update in local language
我想在 PHP 页面的屏幕上打印上次更新的日期。在线搜索我试图创建一个代码,但结果显示为英文,而不是访问者的本地语言。
<?php
setlocale(LC_TIME,"it_IT");
echo "Ultimo aggiornamento" . date ("g:ia \o\n l jS F Y", getlastmod());
?>
你能帮帮我吗?
这个任务有两个部分。
第一个是解决本地化问题。为此,您可以创建语言文件,如 it.php、en.php 等。在文件中你会得到一个包含翻译的数组。
例如:en.php
return [
'lastUpdate' => 'Last update',
'dateTimeFormat' => 'Y-m-d H:i:s'
];
然后 it.php
return [
'lastUpdate' => 'Ultimo aggiornamento',
'dateTimeFormat' => 'g:ia \o\n l jS F Y'
];
其他语言文件同理。
如果您希望站点支持的语言和文本太多,您还可以使用 google 翻译 API 和 php 脚本来生成这些文件,但是后来翻译质量达到了google翻译水平,还不是很完美。
然后一旦你 detect/guess 用户的语言,你就可以 select 语言文件,并将其用于页面上的文本:
$lang = __DIR__ . "{$userLang}.php";
echo "{$lang['lastUpdate']} " . date ($lang['dateTimeFormat'], getlastmod());
故事的另一部分是语言检测。
用 php 你可以得到 user's IP address,然后你可以使用 table 其中包含哪个 IPv4 范围属于哪个国家。但这有一个问题。用户可能正在使用 tor 浏览器、代理,屏蔽了 IP 地址。居住在与 his/her 祖国不同的国家,或者刚到那个国家旅行。所以在这些情况下,猜测将是不正确的。
更好的方法是在前端检查用户的 browser or system language 和 javascript。但它仍然会出错,因为用户可能在不同的国家/地区使用借来的 PC,其中 OS 和浏览器语言不同。
因此,如果您为页面上的用户提供一种使用 select his/her 语言的方式,然后将其存储在 cookie 中,这也很好。
我想在 PHP 页面的屏幕上打印上次更新的日期。在线搜索我试图创建一个代码,但结果显示为英文,而不是访问者的本地语言。
<?php
setlocale(LC_TIME,"it_IT");
echo "Ultimo aggiornamento" . date ("g:ia \o\n l jS F Y", getlastmod());
?>
你能帮帮我吗?
这个任务有两个部分。
第一个是解决本地化问题。为此,您可以创建语言文件,如 it.php、en.php 等。在文件中你会得到一个包含翻译的数组。
例如:en.php
return [
'lastUpdate' => 'Last update',
'dateTimeFormat' => 'Y-m-d H:i:s'
];
然后 it.php
return [
'lastUpdate' => 'Ultimo aggiornamento',
'dateTimeFormat' => 'g:ia \o\n l jS F Y'
];
其他语言文件同理。
如果您希望站点支持的语言和文本太多,您还可以使用 google 翻译 API 和 php 脚本来生成这些文件,但是后来翻译质量达到了google翻译水平,还不是很完美。
然后一旦你 detect/guess 用户的语言,你就可以 select 语言文件,并将其用于页面上的文本:
$lang = __DIR__ . "{$userLang}.php";
echo "{$lang['lastUpdate']} " . date ($lang['dateTimeFormat'], getlastmod());
故事的另一部分是语言检测。
用 php 你可以得到 user's IP address,然后你可以使用 table 其中包含哪个 IPv4 范围属于哪个国家。但这有一个问题。用户可能正在使用 tor 浏览器、代理,屏蔽了 IP 地址。居住在与 his/her 祖国不同的国家,或者刚到那个国家旅行。所以在这些情况下,猜测将是不正确的。
更好的方法是在前端检查用户的 browser or system language 和 javascript。但它仍然会出错,因为用户可能在不同的国家/地区使用借来的 PC,其中 OS 和浏览器语言不同。
因此,如果您为页面上的用户提供一种使用 select his/her 语言的方式,然后将其存储在 cookie 中,这也很好。