Reputation: 23
help me please
I have a code
<?php
// date on Russian
function getDateRus(){
$monthes = array(
1 => 'Января', 2 => 'Февраля', 3 => 'Марта', 4 => 'Апреля',
5 => 'Мая', 6 => 'Июня', 7 => 'Июля', 8 => 'Августа',
9 => 'Сентября', 10 => 'Октября', 11 => 'Ноября', 12 => 'Декабря'
);
return ( (int)date('d') . ' ' . $monthes[(date('n'))] . date(' Y'));
}
// day on Russian
function getDayRus(){
$days = array(
'Воскресенье', 'Понедельник', 'Вторник', 'Среда',
'Четверг', 'Пятница', 'Суббота'
);
return $days[(date('w'))];
}
echo "Today:" . getDateRus() . ", " . getDayRus();
?>
I need to put days off for a week ahead:
25 September, Monday
26 September, Tuesday
27 September, Wednesday
28 September, Thursday
29 September, Friday
30 September, Saturday
01 October, Sunday
I can print the dates for the week ahead, but without the Russian language.
how to deduce the dates for the week ahead and save the Russian language?
Upvotes: 1
Views: 94
Reputation: 1716
I changed your structure slightly and I made use of the powerful function DateTime
$monthes = array(
1 => 'Января', 2 => 'Февраля', 3 => 'Марта', 4 => 'Апреля',
5 => 'Мая', 6 => 'Июня', 7 => 'Июля', 8 => 'Августа',
9 => 'Сентября', 10 => 'Октября', 11 => 'Ноября', 12 => 'Декабря'
);
$days = array(
'Воскресенье', 'Понедельник', 'Вторник', 'Среда',
'Четверг', 'Пятница', 'Суббота'
);
$dArray = array();
$date = new DateTime();
for($i=0; $i<7;$i++){
$dArray[] = $date->format("d").' '.$monthes[$date->format("n")].','.$days[$date->format("w")];
$date->modify("+1 day");
}
print_r($dArray);
Output:
Array ( [0] => 25 Сентября,Понедельник [1] => 26 Сентября,Вторник [2] => 27 Сентября,Среда [3] => 28 Сентября,Четверг [4] => 29 Сентября,Пятница [5] => 30 Сентября,Суббота [6] => 01 Октября,Воскресенье )
You can probs achieve this better by using strftime and setlocale. That way you will not need your day/month arrays
Upvotes: 0