2013-03-11 5 views
1

мне нужно напечатать итальянское время сейчас до 30 дней в этом формате 2013-03-11#11 Mar | MonPHP добавить дни STRFTIME

Я обнаружил, что функция даты не возвращает на итальянском языке, так что я с помощью strftime.

но как я могу добавить дни до strftime?

setlocale(LC_ALL, 'it_IT'); 
for($i=0; $i<30; $i++){ 
    echo $date = date("Y-m-d", strtotime('now + '.$i.' days')); 
    echo " # "; 
    echo $date_string = strftime("%d %b | %a"); 
    } 
+1

Я не понимаю вопрос. На данный момент он печатает «2013-03-11 № 11 Мар | Лун» в течение 30 дней в будущем. Что еще вы хотите от кода? – Husman

+0

Попробуйте удалить «сейчас» из strtotime! – Akdr

+0

первое эхо правильное, вторая печать сегодня (30 раз), а не дни с сегодняшнего дня до 30 дней – simone

ответ

1

Вы можете использовать это:

strftime("%d %b | %a",strtotime($date)) 

Это покажет месяц и день.

1

Этот код кажется, чтобы решить вашу проблему:

setlocale(LC_ALL, 'it_IT'); 
for($i=0; $i<30; $i++){ 
    echo $date = date("Y-m-d", strtotime('now + '.$i.' days')); 
    echo " # "; 
    echo $date_string = strftime("%d %b | %a", strtotime('now + '.$i.' days')) . "<br>"; 
} 

Проблема вы имели в том, что, STRFTIME, использует дату по умолчанию, который является сегодня. Рассматривая документацию, http://php.net/manual/en/function.strftime.php, вы можете указать временную метку для нее вместо нее, которая является вашей будущей датой (теперь + $ i), в качестве второго параметра.

Наслаждайтесь!

Смежные вопросы