我进行了这些简单的 MySQL 查询:
$sql->setQuery("SELECT * FROM $db_table");
for ($i = 0; $i < $sql->getRows(); $i++) {
$id = $sql->getValue("id");
$date = $sql->getValue("date");
setlocale(LC_TIME, 'de_DE');
$date = date('l, d.m.Y');
echo $date;
$sql->next();
}
输出为:2016 年 12 月 22 日星期三。
有没有办法用德语获取工作日?我仍在使用 setlocale(LC_TIME, 'de_DE');
?!
最佳答案
可能是由于Windows机器,未检测到语言环境de_DE
。请改用 deu_deu
。另外,使用 strftime根据区域设置格式化本地时间/日期:
setlocale(LC_TIME, 'de_DE', 'deu_deu');
$date = strftime('%A, %d.%m.%Y');
echo $date;
打印:
Dienstag, 20.12.2016
您可以在 manual 中看到供引用
<小时/>更新:显示数据库中的日期
$date = strftime('%A, %d.%m.%Y', strtotime($date));
所以你的代码将是:
$sql->setQuery("SELECT * FROM $db_table");
for($i=0;$i<$sql->getRows();$i++)
{
$id = $sql->getValue("id");
$date = $sql->getValue("date");
setlocale(LC_TIME, 'de_DE', 'deu_deu');
$date = strftime('%A, %d.%m.%Y', strtotime($date));
echo $date;
$sql->next();
}
关于php - 在 PHP 中将工作日设置为德语,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41247645/