Tutorial Belajar PHP Part 23 – Mencari Posisi String menggunakan fungsi strpos

Selamat datang kembali di warung belajar, melanjutkan pembahasan mengenai tutorial php part 23, kali ini kita akan membahas mengenai fungsi strpos yang merupakan salah satu fungsi bawaan PHP yang digunakan untuk mencari posisi karakter tertentu pada sebuah string.

Pengertian Fungsi strpos

Fungsi strpos digunakan untuk mencari posisi sebuah karakter atau sebuah string didalam string lainnya, hasil dari penggunaan fungsi strpos() akan menunjukkan posisi karakter/string yang dicari.

Format dasar dalam penulisan fungsi strpos di dalam PHP adalah sebagai berikut :

Keterangan :

  • Hasil dari penggunaan fungsi strpos ini bertipekan data mixed, yang artinya tipe datanya bisa lebih dari satu, jika terdapat karakter yang dicari, maka hasilnya akan berupa angka(Integer) yang menunjukkan posisi dari karakter tersebut, tetapi jika karakter yang dicari tidak ditemukan maka nilai yang dikembalikan adalah FALSE (Boolean).
  • Argumen pertama ($a) adalah string asal dimana di string ini pencarian akan dilakukan. string ini dapat berupa kata atau kalimat.
  • Argumen kedua ($b) adalah karakter yang akan dicari, karakter disini dapat berupa huruf/angka ataupun string lain seperti kata atau kalimat
  • Argumen ketiga ($c) bersifat optional, argumen ketiga digunakan untuk melewati hasil pencarian dari posisi tertentu. hal ini digunakan untuk mengabaikan beberapa karakter di awal pencarian.

 

Untuk lebih memahami konsep dari penggunaan fungsi strpos, perhatikan contoh skrip dibawah ini :

Keterangan :

  • Jika skrip diatas dijalankan akan menghasilkan angka 3, karena hasil dari fungsi strpos() disimpan di dalam variabel $hasil_posisi, dan value ditampilkan dengan menggunakan perintah echo
  • Perhatikan di line 3 kita menggunakan fungsi strpos(), argumen pertama adalah variabel $kalimat yang telah kita buat di Line 2
  • Argumen kedua adalah huruf “a”, jika kita melihat pada value variabel $kalimat, huruf “a” berada diurutan ke 3, ingat perhitungan karakter dimulai dari angka 0 bukan 1, sehingga huruf “a” ditemukan di karakter ke 3 bukan ke 4

 

Berikutnya kita coba untuk mencari kata pada string tertentu dengan menggunakan fungsi strpos(), perhatikan contoh skrip dibawah ini :

Keterangan :

  • Jika skrip diatas dijalankan akan menghasilkan angka 8, karena hasil dari fungsi strpos() disimpan di dalam variabel $hasil_posisi, dan value ditampilkan dengan menggunakan perintah echo
  • Perhatikan di line 3 kita menggunakan fungsi strpos(), argumen pertama adalah variabel $kalimat yang telah kita buat di Line 2
  • Argumen kedua adalah kata  “PHP”, jika kita melihat pada value variabel $kalimat, kata “PHP” berada diurutan ke 8, ingat perhitungan karakter dimulai dari angka 0 bukan 1, sehingga kata “PHP” ditemukan mulai  karakter ke 8  bukan ke 9

 

Berikutnya kita ilustrasikan jika hasil pencarian tidak ditemukan, perhatikan skrip berikut ini :

jika dijalankan  hasilnya seperti gambar dibawah :

Keterangan :

  • ketika menggunakan fungsi strpos() untuk mencari kata “HTML” didalam value dari variabel $kalimat, karena hasilnya tidak ditemukan maka value yang tersimpan di variabel $hasil_posisi adalah FALSE, nah untuk menampilkan hasil FALSE ini kita menggunakan perintah var_dump di Line 4.

 

Seperti contoh diatas jika string yang dicari tidak ditemukan maka pengembalian nilainya adalah FALSE, anda bisa menggunakannya untuk melakukan pengecekan kondisi seperti menggunakan perintah IF, contoh penggunaannya perhatikan skrip dibawah ini :

Keterangan :

  • Jika skrip diatas dijalankan akan menampilkan tulisan “Kata ditemukan”, karena hasil pencarian dengan fungsi strpos akan mengembalikan nilai 8, sehingga pemeriksaan kondisinya dianggap nilainya bukan FALSE sehingga yang tampil adalah “Kata ditemukan”

 

Berikutnya kita coba menuliskan skrip untuk mengembalikan nilai FALSE, perhatikan contoh dibawah ini :

Keterangan :

  • Jika dijalankan maka akan menampilkan tulisan “Kata tidak ditemukan”, hal tersebut dikarenakan hasil dari penggunaan fungsi strpos() bernilai FALSE, sehingga ketika dilakukan pengecekan kondisi, karena nilainya adalah FALSE sehingga yang ditampilkan adalah “Kata tidak ditemukan”

 

Untuk penggunaan perintah IF untuk melakukan pengecekan kondisi dari hasil fungsi strpos, perlu diperhatikan jika nilai pengembaliannya adalah 0, maka PHP akan menganggap sebagai FALSE, untuk lebih memahami maksudnya perhatikan contoh skrip dibawah ini :

Keterangan :

  • Jika dijalankan maka akan menampilkan tulisan “Kata tidak ditemukan”, hal tersebut dikarenakan hasil pengembalikan fungsi strpos adalah 0, karena karakter “B” ditemukan di karakter ke – 0, ketika melakukan pengecekan kondisi dengan menggunakan perintah IF, angka 0 akan dianggap sebagai FALSE, sehingga yang ditampilkan tulisan ” Kata tidak ditemukan”.

 

Untuk mengatasi hal tersebut kita akan merubah skripnya menjadi seperti berikut ini :

Keterangan :

  • hasil dari penggunaan fungsi strpos adalah angka 0, karena karakter “B” berada di karakter ke – 0
  • tetapi perhatikan untuk pengecekan kondisi di Line 4 kita menuliskan if($hasil_posisi !== FALSE), pengecekan nilai ini akan dianggap TRUE, karena 0 bukan FALSE, sehingga akan menampilkan “Kata ditemukan”.

 

Berikutnya kita akan membahas mengenai argumen ketiga dari fungsi strpos, seperti yang telah dibahas dibagian awal, argumen ketiga dari fungsi strpos digunakan untuk melewati hasil pencarian dari posisi tertentu. hal ini digunakan untuk mengabaikan beberapa karakter di awal pencarian

untuk lebih memahami perhatikan skrip dibawah ini :

Keterangan :

  • Jika skrip diatas dijalankan akan menghasilkan angka 5, padahal seharusnya untuk karakter “a” sudah ditemukan di karakter ke 3, tetapi saat menggunakan fungsi strpos kita menuliskan angka 4 diparameter ketiga, sehingga pencarian karakter “a” dimulai dari karakter ke- 4, jadi karakter “a” yang ditemukan di karakter 3 akan dilewatkan.

 

 

Mengenal Fungsi stripos

Fungsi strpos yang telah kita pelajari sebelumnya bersifat case sensitive yang artinya membedakan besar kecilnya huruf, jadi jika anda mencari karakter “a” (huruf kecil) dalam kalimat “BELAJAR PHP ITU MUDAH”, maka hasilnya karakter “a” tidak ditemukan.

Nah bagaimana kalau kita ingin mencari karakter tanpa memperdulikan penggunaan huruf kecil dan besar ??

Anda bisa menggunakan fungsi stripos yang digunakan untuk mencari karakter dan tidak bersifat case sensitive, yang artinya dalam pencarian data tidak membedakan besar  kecilnya huruf.

untuk lebih memahami silahkan perhatikan contoh skrip dibawah ini :

Hasilnya sebagai berikut :

Keterangan :

  • Jika anda menggunakan fungsi strpos untuk mencari karakter “a” pada variabel $kalimat (Line 3), maka hasilnya adalah FALSE, karena fungsi strpos membedakan besar kecilnya huruf (Case Sensitive)
  • Jika anda menggunakan fungsi stripos untuk mencari karakter “a” pada variabel $kalimat (Line 7), maka akan menghasilkan angka 3, karena fungsi stripos tidak membedakan besar kecilnya huruf (Case Sensitive)

 

Baik sekian dulu teman – teman pembahasan mengenai fungsi strpos dan stripos yang digunakan untuk mencari posisi karakter tertentu didalam sebuah string, jika ada yang ingin didiskusikan silahkan di kolom komentar, sekian dulu sampai jumpa di seri tutorial PHP part selanjutnya.

Leave a Reply

Your email address will not be published. Required fields are marked *