Mencari Posisi String Di PHP Dengan strpos()

Tutorial kali ini akan membahas bagaimana cara mencari posisi string di PHP dengan strpos(). Dalam banyak kasus, mencari sebuah posisi string atau sederhananya mencari posisi karakter pada sebuah string atau kata atau kalimat dapat digunakan untuk menentukan suatu kondisi pada proses tertentu untuk menentukan keputusan suatu kondisi.

Cara untuk mencari posisi sebuah string didalam string dengan PHP yaitu menggunakan fungsi strpos(). Berikut ini adalah deskripsi singkat tentang fungsi strpos().

strpos(string $haystack, string $needle, int $offset = 0): int|falseCode language: PHP (php)

Fungsi strpos() memiliki beberapa parameter, berikut ini penjelasan singkatnya:

  • $haystack adalah string atau kata untuk dicari.
  • $needle adalah nilai string yang harus dicari.
  • $offset adalah bilangan bulat yang digunakan untuk menentukan darimana (index) proses pencarian dimulai.

$offset dapat berupa nilai positif atau negatif. Jika $offset bernilai positif maka fungsi strpos() akan mulai proses pencarian dari nilai $offset hingga akhir string.

Namun jika $offset merupakan nilai negatif, maka fungsi strpos() memulai proses pencarian dari posisi paling akhir sebuah string.

Jika fungsi strpos() tidak menemukan $needle di $haystack, maka fungsi strpos() akan mengembalikan nilai false.

Contoh penggunaan fungsi strpos()

Mari kita coba beberapa contoh penggunaan strpos() agar lebih mudah dipahami.

1. Mencari suatu kata dengan strpos()

Berikut ini adalah contoh dimana kita akan mencari kata “PHP” pada sebuah kalimat “Belajar PHP”, dimana kita ingin mengetahui kata PHP berada di indeks berapa.

<?php 
$string = 'Belajar PHP';
echo strpos($string, 'PHP'); // Output: 8Code language: HTML, XML (xml)

Pada kode diatas akan menghasilkan nilai keluaran “8”, dimana ternyata kata “PHP” berada di indeks 8 pada sebuah string “Belajar PHP”.

Pengunaan strpos() PHP

2. Menentukan offset pada fungsi strpos()

Berikut ini adalah penggunaan strpos() dengan menentukan parameter $offset, mencari kata “PHP” didalam kalimat “PHP Belajar PHP”.

<?php 
$string = 'PHP Belajar PHP';
echo strpos($string, 'PHP', 3); // Output: 12Code language: HTML, XML (xml)

Kode diatas penghasilkan keluaran 12 dari kata yang dicari, kenapa 12? karena kata PHP didepan akan dilewati dan akan dimulai dari index 3, maka fungsi strpos() akan mencari kata didepan index 3 tersebut.

mencari posisi string di php

3. Mengkombinasikan dengan kondisi

Dalam beberapa kasus, terkadang kita tidak perlu tahu ada di indeks berapa kata string yang ingin kita cari, yang penting bahwa kata yang dicari pada string “ada” atau “tidak”. Kita bisa gunakan kondisi, misalnya.

<?php 
$string = 'Belajar PHP';
$search = 'PHP';
$position = strpos($string, $search);

if ($position) {
    echo 'Kata ' . $search . ' ditemukan';
} else {
    echo 'Tidak ditemukan';
}Code language: HTML, XML (xml)

Kode diatas akan menghasilkan..

Kata PHP ditemukan

Kondisi diatas akan bernilai true karena “PHP” berada di indeks terakhir pada string, namun jika kata PHP berada di depan yang artinya akan ditemukan di indeks 0, maka kondisi diatas akan bernilai false karena PHP akan menerjemahkan 0 sebagai false, meskipun kata PHP ada di kalimat “PHP Belajar”.

Baca juga: Memotong Kata Di PHP Dengan Fungsi substr()

Untuk menangani kasus tersebut kita bisa menggunakan tipe true atau false dan dengan operator perbandingan identik yaitu === atau !==, sebagai contoh.

<?php 
$string = 'PHP Belajar PHP';
$search = 'PHP';
$position = strpos($string, $search);

if ($position !== false) {
    echo 'Kata ' . $search . ' ditemukan di indeks ' . $position;
} else {
    echo 'Tidak ditemukan';
}Code language: HTML, XML (xml)

Output:

Kata PHP ditemukan di indeks 0

Case-sensitive

Menggunakan strpos() harus juga memperhatikan besar-kecil nya huruf yang dicari, karena bersifat case-sensitive, yang artinya string yang dicari harus tepat sesuai dengan string yang tersedia. Sebagai contoh:

<?php 
$string = 'PHP Belajar PHP';
$position = strpos($string, 'php');

var_dump($position); // Output: bool(false)Code language: HTML, XML (xml)

kode diatas akan menghasilkan nilai keluaran false, karna kata “php” tidak ditemukan didalam kalimat “PHP Belajar PHP”.

Demikian tutorial Mencari String Di PHP Menggunakan strpos().

Ringkasan

  • Gunakan fungsi strpos() saat ingin mencari indeks kata pada suatu string.
  • Perhatikan penggunaan case-sensitive pada fungsi strpos().

Komentar

Selamat, anda berkesempatan menjadi komentator pertama di artikel ini. Punya pertanyaan atau saran? Silahkan tinggalkan komentar untuk memulai diskusi.
Terima kasih telah memilih untuk meninggalkan komentar. Harap diingat bahwa semua komentar dimoderasi sesuai dengan kebijakan, dan informasi anda TIDAK akan dipublikasikan. Harap JANGAN gunakan kata kunci di kolom nama. Mari kita buat diskusi yang menarik dan bermakna.

Tinggalkan komentar

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

This site uses Akismet to reduce spam. Learn how your comment data is processed.