Fungsi preg_split()
digunakan untuk dapat memecah string menjadi arraymenggunakan pencocokan ekspresi reguler sebagai pemisah.
preg_split(pattern, string, limit, flags)
Parameter | Deskripsi |
---|---|
pattern | Required. Ekspresi reguler yang menentukan apa yang akan digunakan sebagai pemisah |
string | Required. String yang dipisah |
limit | Optional. Default-nya -1, artinya tidak terbatas. Membatasi jumlah elemen yang dapat dimiliki oleh array yang dikembalikan. Jika batas tercapai sebelum semua pemisah ditemukan, sisa string akan dimasukkan ke elemen terakhir dari array |
flags | Optional. Flag ini menyediakan opsi untuk mengubah array yang dikembalikan: PREG_SPLIT_NO_EMPTY – String kosong akan dihapus dari array yang dikembalikan. PREG_SPLIT_DELIM_CAPTURE – Jika ekspresi reguler berisi grup yang dibungkus dalam tanda kurung, kecocokan grup ini akan disertakan dalam array yang dikembalikan. PREG_SPLIT_OFFSET_CAPTURE – Setiap elemen dalam array yang dikembalikan akan menjadi array dengan dua elemen, di mana elemen pertama adalah substring dan elemen kedua adalah posisi karakter pertama substring dalam string input. |
Return Value: | Mengembalikan array substring di mana setiap item sesuai dengan bagian dari string input yang dipisahkan oleh pencocokan ekspresi reguler |
---|---|
PHP Version: | 4+ |
Contoh 1
Gunakan preg_split () untuk membagi tanggal menjadi komponennya:
<?php $date = "1999-07-01 00:00:00"; $pattern = "/[-\s:]/"; $components = preg_split($pattern, $date); print_r($components); ?> /* Output : Array ( [0] => 1999 [1] => 07 [2] => 01 [3] => 00 [4] => 00 [5] => 00 )
Contoh 2
Menggunakan tanda PREG_SPLIT_DELIM_CAPTURE:
<?php $date = "1998-01-07 00:00:00"; $pattern = "/([-\s:])/"; $components = preg_split($pattern, $date, -1, PREG_SPLIT_DELIM_CAPTURE); print_r($components); ?> /* Output : Array ( [0] => 1998 [1] => - [2] => 01 [3] => - [4] => 07 [5] => [6] => 00 [7] => : [8] => 00 [9] => : [10] => 00 )
Contoh 3
Menggunakan tanda PREG_SPLIT_OFFSET_CAPTURE:
<?php $date = "1970-01-01"; $pattern = "/-/"; $components = preg_split($pattern, $date, -1, PREG_SPLIT_OFFSET_CAPTURE); print_r($components); ?> /* Output : Array ( [0] => Array ( [0] => 1970 [1] => 0 ) [1] => Array ( [0] => 01 [1] => 5 ) [2] => Array ( [0] => 01 [1] => 8 ) )