Definisi dan Penggunaan
Fungsi preg_split() digunakan untuk dapat memecah string menjadi arraymenggunakan pencocokan ekspresi reguler sebagai pemisah.
Syntax
preg_split(pattern, string, limit, flags)
Nilai Parameter
| 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. |
Detail Teknis
| 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
)
)