2010-01-26 9 views
6

Tôi muốn thay đổi định dạng của một ngày trong Symfony 1,4Làm thế nào để định dạng một loại getUpdatedAt() trong Symfony?

Giá trị mặc định một con người:

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

Tôi muốn ngày tôi phải được định dạng như sau: 26/01/2010 - 16h23

tôi đã thử sử dụng lớp trợ giúp format_dateDateHelper.

Thật không may là API khá rỗng (một cái gì đó thực sự cần phải được thực hiện về nó.)

Duyệt mã nguồn của helper, tôi thấy rằng một số thứ hai, định dạng, có thể được thông qua.

Tôi cho rằng nó đang sử dụng cú pháp giống như PHP's date function. Nhưng đây là những gì nó ra (giống ví dụ như trên):

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

Tôi chắc rằng tôi không phải là người đầu tiên gặp khó khăn trong việc này nhưng tôi đã Googling xung quanh và không có gì chính xác xuất hiện.

Các bạn có biết cách định dạng ngày trong Symfony 1.4 không?

Trả lời

14

Hãy xem new functions in 1.4.

Bạn có thể làm:

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

Từ các tài liệu:

Setters Ngày và Getters

Chúng tôi đã bổ sung thêm hai phương pháp mới để lấy thuyết ngày hoặc dấu thời gian các giá trị như các đối tượng đối tượng DateTime của PHP.

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

Bạn cũng có thể đặt giá trị ngày bằng cách chỉ cần gọi phương thức setDateTimeObject và chuyển phiên bản DateTime hợp lệ.

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

Nhưng dường như chỉ làm việc cho Học thuyết.

1

Bout sẽ hoạt động như thế nào với hàm ngày mặc định của PHP? date('d/m/Y', strtotime($question->getUpdatedAt())

+0

Tôi muốn sử dụng helper format_date, bạn có biết những từ khóa các tham số định dạng được sử dụng? –

0

Bạn cũng có thể sử dụng lớp sfDateFormat để làm việc với ngày tháng. link text

-4

Bạn thử:

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

Tôi nghĩ rằng đó là cách dễ nhất

+0

Câu trả lời sai, vì nó không hoạt động. –