phattarachai/filament-thai-date-picker

FilamentPHP Thai Date Picker Form Component
2,429 6
Install
composer require phattarachai/filament-thai-date-picker
Latest Version:v4.1.0
PHP:^8.3
License:MIT
Last Updated:Oct 11, 2026
Links: GitHub  ·  Packagist
Maintainer: phatchai

FilamentPHP Thai Date Picker Form Component

Latest Version on Packagist Tests Code Style PHP Version Laravel Version Total Downloads

ปฏิทิน Thai Date Picker สำหรับ Filament Form Component วัน/เดือน/ปีที่แสดงใน Form เป็นภาษาไทย (พ.ศ.) แต่เก็บเข้า Model เป็นปี ค.ศ.ตามปกติ

Thai Date Picker

Version ที่รองรับ

Filament ThaiDatePicker สถานะ
5.x 3.x เวอร์ชันปัจจุบัน
4.x 2.x ใช้งาน
3.x 1.x หยุด support

วิธีติดตั้ง

Run คำสั่ง composer require เพื่อติดตั้ง Package

composer require phattarachai/filament-thai-date-picker

ทำการ publish ไฟล์ javascript (ถ้าหากไม่ได้ run คำสั่งนี้อยู่แล้วในไฟล์ composer.json post-autoload-dump)

php artisan filament:upgrade

วิธีใช้งาน ThaiDatePicker

ใช้เหมือน DatePicker ปกติ แต่เรียกใช้ class ThaiDatePicker แทน

use Phattarachai\FilamentThaiDatePicker\ThaiDatePicker;

ThaiDatePicker::make('order_date')
    ->label('วันที่สั่งซื้อ')
    ->suffixIcon('heroicon-o-calendar')

แบบ มีเวลา

use Phattarachai\FilamentThaiDatePicker\ThaiDateTimePicker;

ThaiDateTimePicker::make('transfer_at')
    ->label('เวลาที่โอน')
    ->suffixIcon('heroicon-o-calendar')

โดยปี พ.ศ.จะใช้สำหรับการแสดงผลเท่านั้น เวลาใช้งาน state เพื่อบันทึกลงฐานข้อมูลจะได้เป็นปี ค.ศ. ตามปกติ


$data = $this->form->getState();
// $data['order_date'] = '2024-05-17'

การแสดงวันที่ภาษาไทยใน Infolist

นอกจาก Datepicker แล้วใน package นี้เพิ่ม method thaidate() และ thaidatetime() สำหรับช่วยการแสดงผล Infolist วันที่ปี พ.ศ. ภาษาไทย

use Filament\Infolists\Components\TextEntry;

TextEntry::make('order_date')
    ->label('วันที่สั่งซื้อ')
    ->thaidate(),
    // 18 พ.ค. 67
use Filament\Infolists\Components\TextEntry;

TextEntry::make('created_at')
    ->label('วันที่สร้าง')
    ->thaidatetime(),
    // 18 พ.ค. 67 12:05

ถ้า field วันที่ เป็นค่า null ได้แล้วแล้วต้องการให้แสดงค่า default สามารถส่ง parameter default ไปใน function ได้

use Filament\Infolists\Components\TextEntry;

TextEntry::make('confirm_date')
    ->label('วันที่ยืนยัน')
    ->thaidate(default: '-'),
    // -

การแสดงวันที่ภาษาไทยใน Table Column

เช่นเดียวกับ Infolist package นี้เพิ่ม macro method thaidate() สำหรับการ format การแสดงผลคอลัมน์วันที่เพื่อให้แสดงผลเป็นปี พ.ศ. ภาษาไทย ได้เลย

use Filament\Tables;

Tables\Columns\TextColumn::make('order_date')
    ->label('วันที่')
    ->thaidate()
    // สามารถระบุ date format ได้เหมือน function date_format ของ PHP
    // default format เป็น d M y
    // เช่น 18 พ.ค. 67

ถ้าเป็น วันที่และเวลาใช้ method thaidatetime()

use Filament\Tables;

Tables\Columns\TextColumn::make('created_at')
    ->label('วันที่สร้าง')
    ->thaidatetime()
    // default format เป็น d M y H:i
    // เช่น 18 พ.ค. 67 12:00

ผู้พัฒนา

สวัสดีครับ ผมอ๊อฟนะครับ เป็น Full Stack Web Developer รับ Implement งาน Project ทางด้าน Web Application สำหรับองค์กร ธุรกิจ SME ส่วนงานราชการและบริษัทขนาดใหญ่ครับ https://phattarachai.dev

line: phat-chai

License

The MIT License (MIT).

Related Packages

tightenco/ziggy

Use your Laravel named routes in JavaScript.

57,819,113 4,320
spatie/shiki-php

Highlight code using Shiki in PHP

30,532,798 315
spatie/laravel-web-tinker

Artisan Tinker in your browser

4,453,490 1,218
malzariey/filament-daterangepicker-filter

This package uses daterangepciker library to filter date by a range or predefine...

3,011,647 178
emilianotisato/nova-tinymce

This Nova package allow you to use TinyMCE editor for text areas.You can customi...

1,015,392 116

Version History

Version Released PHP Laravel License
v4.1.0 ^8.3 ^12.0|^13.0 MIT
v4.0.2 ^8.3 ^12.0|^13.0 MIT
v4.0.1 ^8.3 ^12.0|^13.0 MIT
v4.0.0 ^8.3 ^12.0|^13.0 MIT
3.0.1 ^8.2 MIT