Thời gian là 1 vấn đề cực kì quan trọng trong khi xử lý dữ liệu .Ví dụ bạn cần lấy 1 thông tin trong khoảng thời gian từ ngày 12 đến ngày 23 hoặc xem thời gian bài viết đăng .Datetime là vấn đề làm đau đầu nhiều người .Hôm nay chúng ta sẽ cùng nhau đi tìm hiểu những vấn đề liên quan đến datetime :

  • Formatting Date and Time Values
  • Các kiến thức cần tham khảo trước
  • Tự động tạo datetime trong yii2
  • Tạo form search với datetime

Formatting Date and Time Values

Đây là 1 số lưu ý trước khi bạn xử dụng formatting trong yii2 nhằm đạt được như ý mình

Formatting Date Ví dụ Time Values
Date() January 01, 2014
Time 15:11
Datetime January 01, 2014 14:23
timestamp 12313123
relativeTime 3 hour ago
duration 1 day, 2 minutes

Các kiến thức cần tham khảo trước

Kiến thức cần tham khảo khi xem bài viết của mình các bạn cần xem lại gồm :

Tự động tạo datetime trong yii2

Tự động tạo datetime trong yii2 là 1 việc cần thiết khi bạn muốn lưu lại ngày tạo dữ liệu ngày sửa dữ liệu khi có thay đổi .Dưới đây là demo về việc tạo dữ liệu trong yii2 .Đầu tiên bạn cần có 1 bảng dữ liệu status như sau :

Có tác dụng lưu lại các status và thời gian tạo ra nó .Tiếp theo bạn đến phần models có tác dụng kiểm tra rules và tự động tạo thời gian viết status

Các bạn lưu ý behaviors() ở đây mình có sử dụng phương thức có sẵn trong yii2 là ‘class’=> TimestampBehavior::className(), với các thông số đi kèm .Bạn có thể tự custom cho mình 1 class riêng để xử lý nhé .Ở phần tiếp theo mình sẽ hướng dẫn các bạn cách viết 1 class như vậy

Còn phần view với controller thì không có sự thay đổi nào khác cả .

Tạo form search với datetime trên

Chúng ta đã lưu dữ liệu dưới dạng int .Vậy để làm sao chúng ta có thể tìm kiếm dữ liệu trong khoảng 1 thời gian nào đó do đó chúng ta cần làm form search với dạng dữ liệu đặc biệt này

Ở đây mình tạo 1 action trong StatusController.php trong mục frontend/controllers

Ở đây mình dùng thêm models có nhiệm vụ kiểm tra dữ liệu đầu vào đáp ứng 1 số yêu cầu .File Statusvalue() có nội dung như sau :

Ok giờ đến file view : search.php .Mình sử dụng yii\jui\DatePicker;.Nội dung file như sau :

Bạn có thể để ý đến ở đây mình dùng activeForm và DatePicker để tạo giao diện cho from_search.

Bạn có thể test demo ở link dưới đây http://demo.hbsprogram.com/status/ :

Nếu có gì ko hiểu bạn hãy comment bên dưới để chúng ta cùng nhau thảo luận nhé

 

 

 

 

 

Leave a Reply

Your email address will not be published. Required fields are marked *