Filter — NexaFilter
Pipa pada variabel template: {nilai|nama} dan {nilai|nama:arg1,arg2} — dijalankan oleh NexaFilter::Filter().
NexaFilter.php · parseFilters
Template memanggil NexaFilter::Filter($value, $name, $args) (lihat system/Dom/NexaDom.php). Nama filter di-strtolower — tidak case-sensitive. Sintaks di HTML: {variabel|filter} atau {variabel|filter:arg1,arg2} — argumen dipisah koma setelah titik dua (parseFilters()).
Nilai kosong: null diubah jadi string kosong sebelum filter dijalankan.
upper(), lower(), ucwords(), ucfirst(), dll.) ada untuk pemakaian langsung dari PHP; untuk pipa di template yang dipakai hanya cabang switch di dalam Filter(). Di sana huruf pertama kata memakai filter capitalize (bukan nama ucfirst/ucwords di pipa).
Daftar filter (Filter())
| Filter | Argumen (opsional) | Perilaku ringkas |
|---|---|---|
upper | — | strtoupper |
lower | — | strtolower |
capitalize | — | ucfirst pada string |
slug | — | URL-friendly, non-alnum → - |
trim | — | trim |
more | panjang (default 100) | Potong + … jika lebih panjang |
replace | cari, ganti | str_replace |
substr | start, length | Subtring |
pad | panjang, karakter, left|right | str_pad |
date | format (default Y-m-d) | strtotime + date; jika format memuat M / F, nama bulan diganti ke Indonesia |
time_ago | — | Relatif bahasa Indonesia (menit/jam/hari/bulan/tahun yang lalu) |
in | — | Tanggal: d + bulan panjang ID + Y |
indonesian_date_short | — | d + bulan singkat ID + Y |
bulan_indonesia | — | Nama bulan penuh dari tanggal |
bulan_singkat_indonesia | — | Bulan singkat ID |
hari_indonesia | — | Nama hari (Minggu–Sabtu) |
number_format | desimal (default 0) | number_format angka |
round | presisi (default 0) | Pembulatan |
percent | desimal (default 0) | Angka + % |
abs, ceil, floor | — | Fungsi float standar → string |
currency | simbol, desimal | Simbol + number_format |
rp | — | Rp + format Indonesia (ribuan .) |
decimal_to_rupiah | — | Seperti rp + sufiks ,- |
terbilang | — | Angka → kata Indonesia (static::terbilang) |
terbilang_rupiah | — | Terbilang rupiah + sen jika perlu |
order_code | padding (default 4) | ID order → string nol di kiri |
nl2br | — | Baris baru → <br> |
strip_tags | tag yang diizinkan | strip_tags |
escape | — | htmlspecialchars ENT_QUOTES UTF-8 |
html_decode | — | html_entity_decode |
url_encode | — | urlencode |
encode / decode | — | Base64 |
md5 | — | Hash MD5 |
join | pemisah (default , ) | Jika nilai array → implode; selain itu dikembalikan apa adanya |
split | delimiter (default ,) | explode lalu sambung lagi dengan koma (sesuai implementasi) |
Nama tidak dikenal: cabang default mengembalikan nilai tanpa diubah. Untuk filter baru, tambahkan case di NexaFilter::Filter().
Lanjut
Sebelumnya: Style (Nexautility). Indeks Helper · Routing · Models · Dokumentasi · Beranda.