Php 这种格式的日文日期
我想用日语以这种格式显示日期: 2010年年2.月18日(木) 也就是说: 2010年2月18日(星期四) 在PHP中 这是我的代码:Php 这种格式的日文日期,php,date,unicode,internationalization,Php,Date,Unicode,Internationalization,我想用日语以这种格式显示日期: 2010年年2.月18日(木) 也就是说: 2010年2月18日(星期四) 在PHP中 这是我的代码: function date_japan() { $dy = date("w"); $dys = array("日","月","火","水","木","金","土"); $dyj = $dys[$dy]; echo date('Y') . '年 ' . date('m') . '月 ' . date('d') . '
function date_japan() {
$dy = date("w");
$dys = array("日","月","火","水","木","金","土");
$dyj = $dys[$dy];
echo date('Y') . '年 ' . date('m') . '月 ' . date('d') . '日' . '(' . $dyj . ')';
}
date_japan();
任何改进都将不胜感激。谢谢。最简单、最实用的方法可能是围绕日期函数创建包装函数:
function date_japan() {
echo date('Y') . '年 ' . date('m') . '月 ' . date('d') . '日';
}
使用,您可以格式化任何(受支持的)语言
if (version_compare(PHP_VERSION, '5.3.0', '<')) {
exit ('IntlDateFormatter is available on PHP 5.3.0 or later.');
}
if (!class_exists('IntlDateFormatter')) {
exit ('You need to install php_intl extension.');
}
$longFormatter = new IntlDateFormatter(
'ja_JP',
IntlDateFormatter::LONG,
IntlDateFormatter::NONE
);
$weekdayFormatter = new IntlDateFormatter(
'ja_JP',
IntlDateFormatter::NONE,
IntlDateFormatter::NONE,
date_default_timezone_get(),
IntlDateFormatter::GREGORIAN,
'EEEEE' // weekday in one letter
);
$datetime = new DateTime("2010-02-18");
echo $longFormatter->format($datetime)
. '(' . $weekdayFormatter->format($datetime) . ")\n";
这样,当您将来需要添加更多语言支持时,您就不会担心了。您的代码将不受日语的特定处理。以下是我使用的…摘自Cameron的代码;-)
这篇文章已经很老了,但如果有人还在寻找答案,这篇文章对我很有用:
setlocale(LC_ALL, "ja_JP.utf8");
$date_format = "%Y年%B%e日(%a)";
$date_string = strftime($date_format, time())
那到底是什么,你试过吗?年 -> 意思是一年。月 -> 意思是月。日-> 意思是白天。代码运行得很好。错过了这一天吗?(thu)我猜这意味着我们必须有一个日文的数组,然后根据日期显示$dys=数组(“日","月","火","水","木","金","土");$dy=日期(“w”);$dy=数组(“日","月","火","水","木","金","土“;$dyj=$dys[$dy];有没有更简单的方法将其添加到代码中?这三种方法可以组合为
date('Y')年M月D日')代码>
$days = array("日","月","火","水","木","金","土");
$date = @date('Y年 m月 d日 (').($dys[@date("w")]).('曜) ').@date('H:i');
$date_japan = date('Y年m月d日', date("w"));
setlocale(LC_ALL, "ja_JP.utf8");
$date_format = "%Y年%B%e日(%a)";
$date_string = strftime($date_format, time())