PHP:日期:显示德语工作日名称[重复]

问题描述 投票:0回答:1

我有我的功能,但我找不到可以用德语显示日期的解决方案。

<?php

function getDatetime($match)
{ 
    $datetime = new DateTime("now", new DateTimeZone("Europe/Berlin"));
    setlocale(LC_TIME, "de_DE");
    setlocale(LC_TIME, 'de_DE', 'de_DE.UTF-8');
    $datetime = new DateTime($match["matchDateTime"]);
    return $datetime->format('l, H:i');
}


$lastDatetime = null;
foreach ($matches as $match) {
    $datetime = getDatetime($match); 
    if($lastDatetime != $datetime) {
        $lastDatetime = $datetime; 
?>
    <tr>
        <td colspan='5' class="date"><? echo strftime($datetime); ?> 
        </td>
    </tr>
<?php
    }
?>
    <tr>
        <td class="icon">
            <img src="<?=$match["team1"]["teamIconUrl"]; ?>" height="25">
        </td>
        <td class="result">
            <div class="result2"><?=$match["matchResults"][1]["pointsTeam1"]; ?> :
                <?=$match["matchResults"][1]["pointsTeam2"]; ?>
            </div> 
        </td>
        <td class="icon">
            <img src="<?=$match["team2"]["teamIconUrl"]; ?>" height="25">
        </td>
    </tr>
<?php
}
?>

如果您有时间,也许您可以帮我添加一个德语工作日名称,例如%A

谢谢!

php
1个回答
0
投票

你应该使用

date_default_timezone_set("Europe/Berlin");

为了表明您的脚本需要时间前往德国并测试您的代码,您可以在此之后使用以下代码:

echo date("l"); //lower case "L"
,

或者还有另一种方法,如果您希望它以德语返回输出,您应该检查您的 PHP 安装中是否启用了 (intl) 扩展。然后您可以输入以下代码:

$today = date("H:i:s");
$date = new DateTime($today);
$formatter = new IntlDateFormatter('de_DE' , IntlDateFormatter::Full, 
IntlDateFormatter::NONE);
echo $formatter->format($date);
© www.soinside.com 2019 - 2024. All rights reserved.