PhP本地化日期

PhP本地化日期,php,wordpress,date,Php,Wordpress,Date,我正试图写一个函数来显示我的日期,用法语和全名分开 我的博文返回: array (size=3) 'date' => string '09/02/2017' (length=10) 'hours' => string '00' (length=2) 'minutes' => string '00' (length=2) 它是法文格式的d/m/y,我已经尝试了使用参数%B的strftime来显示区域设置整月,但是我不理解这个函数,它需要完整的格式日期 例如,当我输入 $mont

我正试图写一个函数来显示我的日期,用法语和全名分开

我的博文返回:

array (size=3)
'date' => string '09/02/2017' (length=10)
'hours' => string '00' (length=2)
'minutes' => string '00' (length=2)
它是法文格式的d/m/y,我已经尝试了使用参数%B的strftime来显示区域设置整月,但是我不理解这个函数,它需要完整的格式日期

例如,当我输入

$month = 02;
echo strftime("%B", $month);
函数返回总是Janvier January(英语)

有人知道如何解决这个问题,并显示星期几字母/天数和月份字母吗

谢谢。

strftime需要时间戳,而不仅仅是数字

echo strftime("%B", time()+(60*60*24*10));  // now + 10 days to get into February

试试这个:

<?php
$var = array (
    'date' => '09/02/2017',
    'hours' => '00',
    'minutes' => '00'
);

$date = strtotime(substr($var['date'], 3, 2).'/'.substr($var['date'], 0, 2).'/'.substr($var['date'], 6, 4));

echo date('l', $date); //day of the week in letters format. It produces: Thursday
echo '<br/>';
echo date('d', $date); //day number format. It produces: 09
echo '<br/>';
echo date('F', $date); //month letters format. It produces: February
谢谢你的帮助

我已经用第一种方法编写了我的函数,它正在工作:

我张贴的功能,如果这可以帮助任何人在未来

function wb_get_event_date ( $format )
{
    global $post;
    setlocale (LC_TIME, 'French');
    $event_date = get_post_meta($post->ID, 'wb_agenda_date', true);
    $event_date_explode = explode("/", $event_date['date']);
    $tim = mktime(0, 0, 1, $event_date_explode[1], $event_date_explode[0], $event_date_explode[2]);

    switch ( $format ) {
        case 'day_full':
            echo utf8_encode(strftime("%A", $tim));
            break;
        case 'day':
            echo strftime("%d", $tim);
            break;
        case 'month':
            echo utf8_encode(strftime("%B", $tim));
            break;
        case 'year':
            echo strftime("%Y", $tim);
            break;
    }
}

你需要;年var是$year,而不是$year。“无论如何都是理解和有效的。@OscarAkaElvis谢谢。打字错误将是我的死亡
function wb_get_event_date ( $format )
{
    global $post;
    setlocale (LC_TIME, 'French');
    $event_date = get_post_meta($post->ID, 'wb_agenda_date', true);
    $event_date_explode = explode("/", $event_date['date']);
    $tim = mktime(0, 0, 1, $event_date_explode[1], $event_date_explode[0], $event_date_explode[2]);

    switch ( $format ) {
        case 'day_full':
            echo utf8_encode(strftime("%A", $tim));
            break;
        case 'day':
            echo strftime("%d", $tim);
            break;
        case 'month':
            echo utf8_encode(strftime("%B", $tim));
            break;
        case 'year':
            echo strftime("%Y", $tim);
            break;
    }
}