Dosazení datumu ve správném formátu

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
lukasklekner
Člen | 24
+
0
-

Ahoj. Mám takový problém mam metodu na úpravu příspěvků která vypadá takto:

public function actionEdit($projectId) {
        $project = $this->projectManager->getProject($projectId);
        if (!$project) {
            $this->error('Příspěvek nebyl nalezen');
        }
        $this['projectForm']->setDefaults($project->toArray());
    }

Potřeboval bych, aby se mi datum do input boxu načetlo ve formátu d.m.Y. Věřím, že řešení bude jednoduché, ale nemůžu na něj nějak přijít. Všem moc děkuji za radu :)

manwe
Člen | 44
+
0
-

Moc nerozumim, si to predtim uprav, ne?

<?php
public function actionEdit($projectId) {
	$project = $this->projectManager->getProject($projectId);
	if (!$project) {
		$this->error('Příspěvek nebyl nalezen');
	}
	$values = $project->toArray();
	$values['mojedatum'] = strftime("%d.%m.%Y", strtotime($values['mojedatum']));
	$this['projectForm']->setDefaults($values);
}
?>

Editoval raddy668 (28. 6. 2017 21:08)

lukasklekner
Člen | 24
+
0
-

raddy668 napsal(a):

Moc nerozumim, si to predtim uprav, ne?

<?php
public function actionEdit($projectId) {
	$project = $this->projectManager->getProject($projectId);
	if (!$project) {
		$this->error('Příspěvek nebyl nalezen');
	}
	$values = $project->toArray();
	$values['mojedatum'] = strftime("%d.%m.%Y", strtotime($values['mojedatum']));
	$this['projectForm']->setDefaults($values);
}
?>

Moc ti děkuju ! Já jsem sem poslal nesprávný kód… Dělal jsem to taky takhle pomocí DateTime, ale ten asi nemá žádnou metodu pro naformátování do určitého typu že ? Jinak nemáš nějakou webovou stránku, kde se vysvětluje co si mi napsal ?

ali
Člen | 342
+
0
-

@lukasklekner staci se podivat do dokumentace

Pavel Kravčík
Člen | 1196
+
+1
-

Ještě doplním Nette alternativu:

echo (new \Nette\Utils\DateTime($values['date']))->format('j. n. Y');
CZechBoY
Člen | 3608
+
0
-

@PavelKravčík co je na tom Nette metoda? :-)
Nette\Utils\DateTime v Nette ma prave tu super metodu ::from a tys pouzil klasicky konstruktor z \DateTime.

Pavel Kravčík
Člen | 1196
+
0
-

Nemám rád strtotime, jediná pointa. From je samozřejmě o fous hezčí.

petrkasnal
Člen | 42
+
+1
-

Pavel Kravčík napsal(a):

Ještě doplním Nette alternativu:

echo (new \Nette\Utils\DateTime($values['date']))->format('j. n. Y');

Todle je uplně super díky moc! :) Přehledný a snadno pochopitelný