Zmiana czasu z liczb na nazwy miesiąca.

0

Witam chciałbym w prosty sposób zrobić tak by datę w ten sposób 12.3.14 zamienić na 12 marca 2014 r., zacząłem to już robić za pomocą funkcji xplode(), ale coś mnie natchnęło by spytać was czy nie znacie jakiejś gotowej już funkcji do przerabiania w ten sposób daty. Ja szukałem i nic mi się nie udało znaleźć jedynie aktualną datę mogę w ten sposób zrobić za pomocą czegoś takiego:


 date("d m Y");
 
$dzien = date('d');
$miesiac = date('n');
$rok = date('Y');

$miesiac_pl = array(1 => 'stycznia', 'lutego', 'marca', 'kwietnia', 'maja', 'czerwca', 'lipca', 'sierpnia', 'września', 'października', 'listopada', 'grudnia');

$dzien_tyg_pl = array('Monday' => 'poniedziałek', 'Tuesday' => 'wtorek', 'Wednesday' => 'środa', 'Thursday' => 'czwartek', 'Friday' => 'piątek', 'Saturday' => 'sobota', 'Sunday' => 'niedziela');

$data= $dzien_tyg_pl[$dzien_tyg]." ".$dzien." ".$miesiac_pl[$miesiac]." ".$rok."r.";


a ja chcę zmienić ciąg liczb oddzielony kropkami.

2

http://php.net/manual/en/function.date.php - podając odpowiedni string funkcja od razu zwróci sformatowaną odpowiednio datę. Oczywiście domyślny locale jest taki, jak locale php, więc pewnie angielski i trzeba go zmienić (setlocale)...
Masz też klasę IntlDateFormatter.

0

gotowe : ) wykorzystałem gotowe funkcję i zrobiłem coś takiego.

<?

class Konwertowanie_Daty {
	
	
	
	
   function konwertuj_na_polski($data){
	
						$okres = explode(".", $data);
	
						$day=$okres[0];
						$miesiac=$okres[1];
						$rok=$okres[2];

						$zmieniony_rok = date("Y", strtotime("$rok-$miesiac-$dzien"));

	$miesiac=str_replace("10","października",$miesiac);	
	$miesiac=str_replace("11","listopada",$miesiac);	
	$miesiac=str_replace("12","grudnia",$miesiac);	
	$miesiac=str_replace("1","stycznia",$miesiac);	
	$miesiac=str_replace("2","lutego",$miesiac);	
	$miesiac=str_replace("3","marca",$miesiac);	
	$miesiac=str_replace("4","kwietnia",$miesiac);	
	$miesiac=str_replace("5","maja",$miesiac);	
	$miesiac=str_replace("6","czerwca",$miesiac);	
	$miesiac=str_replace("7","lipca",$miesiac);	
	$miesiac=str_replace("8","sierpnia",$miesiac);	
	$miesiac=str_replace("9","września",$miesiac);	
	
		
				$zmieniona_data= $dzien.' '.$miesiac.' '.$con_rok.' r.';
				
				return $zmieniona_data;
	
					           }
              }
											  
  $datan= new Konwertowanie_Daty;
  echo $datan->konwertuj_na_polski('20.1.14');

?>
2

Po co pisać jeszcze raz coś, co już dawno temu zostało napisane?

	setlocale(LC_ALL, 'pl_PL', 'pl', 'Polish_Poland.28592');
	echo strftime("%d %B %Y");

1 użytkowników online, w tym zalogowanych: 0, gości: 1