Fungsi preg_replace_callback()
digunakan untuk diberi ekspresi dan callback, mengembalikan string di mana semua kecocokan ekspresi diganti dengan substring yang dikembalikan oleh fungsi callback.
preg_replace_callback(pattern, callback, input, limit, count)
Parameter | Deskripsi |
---|---|
pattern | Required. Ekspresi reguler atau array ekspresi reguler yang menunjukkan apa yang harus dicari |
replacements | Required. Fungsi callback yang mengembalikan pengganti. Fungsi callback memiliki satu parameter yang berisi serangkaian kecocokan. Elemen pertama dalam array berisi kecocokan untuk seluruh ekspresi sementara elemen lainnya memiliki kecocokan untuk setiap grup dalam ekspresi. |
input | Required. String atau array string merupakan tempat penggantian dilakukan |
limit | Optional. Default-nya -1, artinya tidak terbatas. Menetapkan batas berapa banyak penggantian yang dapat dilakukan di setiap string |
count | Optional. Setelah fungsi dijalankan, variabel ini akan berisi angka yang menunjukkan berapa banyak penggantian yang dilakukan |
Return Value: | Mengembalikan string atau array string yang dihasilkan dari penerapan penggantian ke string input atau string. |
---|---|
PHP Version: | 4.0.5+ |
Changelog: | PHP 5.1.0 – Parameter count telah ditambahkan |
Contoh
Hitung huruf di semua kata dalam sebuah kalimat:
<?php function countLetters($matches) { return $matches[0] . '(' . strlen($matches[0]) . ')'; } $input = "Selamat Datang di DosenIT.com!"; $pattern = '/[a-z0-9\.]+/i'; $result = preg_replace_callback($pattern, 'countLetters', $input); echo $result; ?> // Output : Selamat(7) Datang(6) di(2) DosenIT.com(11)!