Symfony'de tarihten bir getUpdatedAt () tür biçimlendirmek nasıl?

3 Cevap php

Ben Symfony 1.4 bir tarih formatını değiştirmek istiyorum

Varsayılan bir varlık:

<?php echo $question->getUpdatedAt(); 
// Returns 2010-01-26 16:23:53
?>

26/01/2010 - 16h23: Ben tarih biçimlendirilir olmak istiyorum

Ben format_date yardımcıya DateHelper class kullanarak çalıştı.

Ne yazık ki API (bir şey gerçekten bu konuda yapılması gerekir.) Oldukça boş

Yardımcının kaynak kodunu gezen, ben ikinci bir argüman, biçim, geçti edilebilir bulundu.

I assumed it was using the same syntax as PHP's date function. But here's what it outputs (same example as above):

<?php sfContext::getInstance()->getConfiguration()->loadHelpers('Date');
// [...]
 echo format_date($question->getUpdatedAt(),'d/m/y - H\hi')
// Returns 26/23/2010 - 16\4i

Ben sorun bunu yaparken sahip ilk ben değilim eminim ama etrafında Googling oldum ve doğru bir şey geldi.

Siz nasıl Symfony 1.4 bir tarihi biçimlendirmek için herhangi bir fikrin var mı?

3 Cevap

new functions in 1.4 bakabilirsiniz.

Sen yapabilirsin:

$question->getDateTimeObject('updated_at')->format('d.m.Y');
// I assume the field's name is 'updated_at'

Dokümanlar:

Date Setters and Getters

Biz PHP DateTime nesne örnekleri olarak Doctrine tarih veya zaman damgası değerlerini almak için iki yeni yöntemler ekledik.

echo $article->getDateTimeObject('created_at')->format('m/d/Y');

Ayrıca sadece setDateTimeObject yöntemini çağırarak ve geçerli bir DateTime örneği geçirerek bir tarih değerini ayarlayabilirsiniz.

$article->setDateTimeObject('created_at', new DateTime('09/01/1985'));

Ama sadece Öğretiler için çalışmak gibi görünüyor.

Ne dersiniz varsayılan PHP tarih fonksiyonu ile gidiyorsun? date('d/m/Y', strtotime($question->getUpdatedAt())

Eğer deneyin:

echo $question->getUpdatedAt('d/m/y - H\hi')

Ben en kolay yol olduğunu düşünüyorum