PHP - Mengambil Substring Setelah Karakter TertentuUntuk mendapatkan apapun setelah karakter tertentu, di PHP ada beberapa cara. Masing-masing memiliki ciri tertentu. Langsung saja kita coba bereksperimen. Diketahui:
Ditanya: Ambil apapun setelah tanda : (titik dua). Dijawab: 1. explode()Umumnya orang akan menggunakan explode(), karena memang fungsi ini sangat populer.
Menurut saya kode diatas kurang semantik. Namun, faktanya banyak digunakan oleh programmer "pro" sekalipun. Jika menggunakan cara diatas, pastikan tanda : di $str selalu ada atau ditemukan. Jika tidak, akan menimbulkan notice: Undefined offset: 1 in... Untuk menghindari notice, bisa menggunakan isset, atau end() lebih praktis. Tidak perlu menggunakan index.
Jika tanda : tidak ditemukan, hasilnya: "Nama: Wahidin S.". Mengikuti sifat explode(). 2. strpos() dan substr()Perhatikan kode berikut ini:
Kode diatas lebih semantik. Secara logika: Dapatkan posisi karakter : menggunakan strpos(), lalu ambil substring setelah posisi karakter :. Jika tanda : tidak ditemukan atau $start adalah FALSE, tidak akan menimbulkan notice, hanya saja akan tampil substring dimulai dari index 1, karena kita menggunakan angka hardcoded 1 disitu. Hasilnya: "ama: Wahidin S.". Jika kita ubah seperti ini:
Jika tanda : tidak ditemukan atau $start adalah FALSE, hasilnya: "Nama: Wahidin S.". 3. strstr()Perhatikan kode berikut ini:
Kode diatas adalah sama dengan menggunakan strpos() dan substr() sekaligus, dengan perbedaan jika tanda : tidak ditemukan akan menghasilkan string kosong.
Kita bisa menggunakan cara ini jika karakter : ingin diikutsertakan. Baca juga: PHP - Mengambil Substring Sebelum Karakter Tertentu |