Fungsi utama dari highlight phrase ini adalah memberi penebalan/pewarnaan/tanda tertentu pada masukan string tertentu terhadap suatu teks. Contoh :
Teks :
Ini Budi, Kakak sedang pergi ke pasar menemani Ibu berbelanja. Setelah itu Kakak pergi ke toko membantu Ayah. Sedangkan Ibu sebelum ke rumah, akan pergi mengambil titipan pesanan baju di rumah Ibu Andi.
Masukan string : Ibu
Hasil :
Ini Budi, Kakak sedang pergi ke pasar menemani Ibu berbelanja. Setelah itu Kakak pergi ke toko membantu Ayah. Sedangkan Ibu sebelum ke rumah, akan pergi mengambil titipan pesanan baju di rumah Ibu Andi.
Pada contoh di atas masukan string yang ada di teks diberi penandaan berupa pewarnaan teks berupa warna merah.
Secara umum, highlight phrase ada dua metode. Agar lebih jelas berikut penerapannya di PHP.
Metode 1 : Memberi penandaan sesuai dengan struktur masukan string.
Sumber kode :
2 3 | // Highlight String :: All $result = preg_replace("/(".preg_quote($input, "/").")/i", "<span style='color: #993300;'>\\1</span>", $text) ; |
Contoh :
Masukan string : Kakak sedang pergi
Hasil :
Ini Budi, Kakak sedang pergi ke pasar menemani Ibu berbelanja. Setelah itu Kakak pergi ke toko membantu Ayah. Sedangkan Ibu sebelum ke rumah, akan pergi mengambil titipan pesanan baju di rumah Ibu Andi.
Metode 2 : Memberi penandaan dengan memecah masukan string menjadi per kata (bila lebih dari satu kata).
Sumber kode :
5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | // Highlight String :: One By One function make_pattern($string) { // Processing string be words $words = preg_split("/[\/\s\n\t\r\f,:;=\'\"$\&\%+@`(.)-?!*]+/", $string) ; // Make pattern each words $output = array() ; foreach($words as $word) { $output[] = '/('.preg_quote($word, '/').')/i' ; } return $output ; } $result = preg_replace(make_pattern($input), "<span style='color: #993300;'>\\1</span>", $text) ; |
Contoh :
Inputan string : Kakak sedang pergi
Hasil :
Ini Budi, Kakak sedang pergi ke pasar menemani Ibu berbelanja. Setelah itu Kakak pergi ke toko membantu Ayah. Sedangkan Ibu sebelum ke rumah, akan pergi mengambil titipan pesanan baju di rumah Ibu Andi.
Keterangan :
Sebagian kode diambil dari fungsi highlight_phrase() bagian Text Helper di CodeIgniter.


Ingin tanya, kalau memberi tanda/warna pada salah satu teks dalam database gimana ya? saya ada masalah di pengulangannya..