Fungsi php mana yang mencari teks tertentu dalam sebuah string?

Fungsi ini mampu mengembalikan posisi kemunculan pertama dari sebuah substring di dalam sebuah string. Dalam kasus tidak mendeteksi substring, false dikembalikan. Tapi, posisi string dimulai dari 0 dan bukan 1. Untuk persepsi yang lebih baik tentang fungsi ini, lihat contoh di bawah ini

Ada fungsi baru str_contains() di PHP 8 yang menyediakan fungsionalitas yang sama

Fungsi strpos() membantu untuk mendeteksi posisi kejadian pertama dari sebuah string di dalam yang lain

❮ Referensi String PHP

Contoh

Temukan posisi kemunculan pertama "php" di dalam string

echo strpos("Saya suka php, saya juga suka php. ","php");
?>

Cobalah sendiri "


Definisi dan Penggunaan

Fungsi strpos() menemukan posisi kejadian pertama dari sebuah string di dalam string lain

Catatan. Fungsi strpos() bersifat case-sensitive

Catatan. Fungsi ini aman untuk biner

Fungsi terkait

  • strrpos() - Menemukan posisi kejadian terakhir dari string di dalam string lain (peka huruf besar/kecil)
  • stripos() - Menemukan posisi kemunculan pertama string di dalam string lain (peka huruf besar-kecil)
  • strripos() - Menemukan posisi kejadian terakhir dari string di dalam string lain (peka huruf besar-kecil)

Sintaksis

strpos(string, temukan, mulai)

Nilai Parameter

ParameterDeskripsistringDiperlukan. Menentukan string ke searchfindRequired. Menentukan string untuk findstartOptional. Menentukan di mana untuk memulai pencarian. Jika mulai adalah angka negatif, itu dihitung dari akhir string

Detail Teknis

Nilai Pengembalian. Mengembalikan posisi kemunculan pertama string di dalam string lain, atau FALSE jika string tidak ditemukan. Catatan. Posisi string dimulai dari 0, dan bukan 1. Versi PHP. 4+Catatan perubahan. PHP 7. 1. 0 - Parameter awal dapat berupa angka negatif
❮ Referensi String PHP

Sebagai pengembang, kemungkinan besar Anda pada suatu saat ingin memeriksa apakah suatu string berisi substring tertentu (karakter, kata, atau frasa). mungkin ketika Anda ingin melakukan tindakan tertentu berdasarkan apakah string mengandung atau tidak mengandung substring tersebut

Ini bisa menjadi tugas sederhana untuk dilakukan secara manual saat string pendek. Untuk string teks yang panjang, ini mungkin memakan waktu lama. Opsi terbaik adalah melakukannya secara terprogram di mana pemeriksaan membutuhkan waktu milidetik untuk diselesaikan

Pada artikel ini, kami akan membahas berbagai cara untuk memeriksa apakah suatu string berisi teks tertentu menggunakan PHP dan dengan bantuan beberapa contoh

Metode untuk memeriksa apakah suatu string berisi teks tertentu dalam PHP

1. Menggunakan fungsi str_contains()

Fungsi str_contains() mengembalikan nilai true jika string berisi substring tertentu (karakter, teks, atau kata) atau false jika tidak .

Sintaksis

str_contains(string, temukan)

Parameter

ParameterRequirementDescriptionstringRequiredMenentukan string yang ingin kita periksa teksnya. findRequiredTentukan teks yang ingin kita cari

Contoh

<?php
$str = "I love coding in php";
$text = "php";
if(str_contains($str, $text)){
  echo "The text ‘php’ exists in the string variable";
}
else{
  echo "The text does not exist in the string";
}

Keluaran

Teks 'php' ada di variabel string

Pemeriksaan kami telah memastikan bahwa string berisi teks "php"

Catatan. Fungsi ini peka huruf besar-kecil

Catatan. Fungsi ini diperkenalkan di PHP versi 8. Jika Anda mencoba menjalankannya dalam versi PHP sebelumnya, itu akan menimbulkan kesalahan di bawah ini

Kesalahan fatal. Kesalahan yang tidak tertangkap. Panggil ke fungsi yang tidak terdefinisi str_contains() di /path/to/file/filename. php. 4 Jejak tumpukan. #0 {main} dilempar ke /path/to/file/filename. php pada baris 4

Anda harus menggunakannya HANYA ketika Anda menjalankan PHP versi 8 atau yang lebih baru

  • Artikel terkait
  • Cara memeriksa versi PHP situs web Anda
  • Cara memutakhirkan versi PHP situs web Anda
  • Cara menyesuaikan versi PHP untuk berbagai direktori di cPanel

2. Menggunakan fungsi strpos()

Fungsi strpos() mengembalikan posisi kemunculan pertama teks di dalam string. Mengembalikan salah jika teks tidak ditemukan dalam string.

Sintaksis

strpos(string, temukan, mulai)

Parameter

ParameterRequirementDescriptionstringRequiredMenentukan string yang ingin kita periksa textfindRequiredMenentukan teks yang ingin kita temukanstartOptionalMenentukan posisi dalam string tempat kita ingin memulai pencarian teks. Jika mulai adalah angka negatif, itu dihitung dari akhir string

Contoh

<?php
$str = "I love coding in php";
echo strpos($str, "php");
_

Keluaran

17

Dalam contoh kami di atas, kami memeriksa posisi kemunculan pertama teks "php" di dalam string. Ini adalah posisi huruf/karakter pertama dari teks (p pertama dari "php") dari awal string (termasuk spasi)

Huruf "p" pertama dari teks php adalah karakter ke-18 dari string. Tetapi penghitungan posisi string dimulai dari nol (0) dan bukan 1. Oleh karena itu, teks "php" dimulai pada posisi 17

Namun, saat memeriksa apakah teks ada di dalam string atau tidak, kami tidak terlalu tertarik dengan posisinya. Yang ingin kita ketahui adalah apakah fungsi strpos() mengembalikan benar atau salah. Jika hasilnya TIDAK salah, maka string berisi teks. Jika tidak, tidak.

Contoh

<?php
$str = "I love coding in php";
$text = "php";
if(strpos($str, $text) !== false){
  echo "The text ‘php’ exists in the string variable";
}
else{
  echo "The text does not exist in the string";
}

Keluaran

Teks 'php' ada di variabel string

Pemeriksaan kami telah memastikan bahwa string berisi teks "php"

Perhatikan bahwa saya telah menggunakan . == false operator. Operator === true akan bekerja dengan sempurna juga.

Menggunakan . = false or == true or even if(strpos(. ) ) {} tidak disarankan. Ini karena fungsi strpos() akan mengembalikan 0 jika teks yang kita periksa keberadaannya berada pada posisi 0 (adalah kata atau karakter pertama) dari . Pemeriksaan ini akan mengacaukan 0 dengan false dan mengembalikan false ketika string sudah berisi teks.

  • Artikel terkait
  • Perbedaan antara =, == dan === di PHP
  • Perbedaan antara. = dan. == dalam PHP

strpos() peka terhadap huruf besar-kecil. Jika Anda ingin melakukan pemeriksaan case-insensitive, gunakan stripos() sebagai gantinya. Keduanya bekerja persis sama kecuali sensitivitas huruf besar-kecil

3. Menggunakan fungsi meledak() dan in_array()

Fungsi PHP explode() digunakan untuk memecah string menjadi array yang diindeks.

Sintaksis

meledak (pemisah, tali, batas)

Parameter

ParameterRequirementDescriptionseparatorRequiredMenentukan tempat untuk memutuskan string. Ini bisa berupa apa saja seperti spasi (" "), koma(,), titik penuh(. ), surat, dll. Parameter ini tidak boleh berupa string kosong. stringRequiredMenentukan string yang ingin kita pecahkan menjadi sebuah array. limitOptionalMenentukan jumlah elemen larik yang akan dikembalikan. Jika disetel ke 0, fungsi mengembalikan array dengan hanya satu elemen. Jika diatur lebih besar dari 0, fungsi mengembalikan array dengan elemen batas maksimum. Jika kurang dari 0, fungsi mengembalikan array kecuali elemen -limit terakhir ()

Contoh

<?php
$str = "I love coding in php";
$array = explode(" ", $str);
var_dump($array);

Keluaran

array(5) { [0]=> string(1) "Aku" [1]=> string(4) "cinta" [2]=> string(6) "coding" [3]=> string(2)

Fungsi in_array() digunakan untuk mencari nilai tertentu dalam larik. Ini mengembalikan true, jika nilainya ada dalam array, dan false jika tidak.

Sintaksis

in_array(cari, larik)

Parameter

ParameterRequirementDescriptionsearchRequiredMenentukan teks yang akan dicari dalam larik. arrayRequiredMenentukan larik tempat kita melakukan pencarian

Contoh

<?php
$array = array("Peter", "Mary", "Khan", "Juan");
if(in_array("Mary", $array)){
  echo "The text ‘Mary’ exists in the array";
}
else{
  echo "Does not exist in the array";
}
_

Keluaran

Teks 'Mary' ada di dalam array

Menggabungkan fungsi burst() dan in_array()

<?php
$str = "I love coding in php";
$array = explode(" ", $str);
if(in_array("php", $array)){
  echo "The text ‘php’ exists in the string";
}
else{
  echo "Does not exist in the string";
}

Keluaran

Teks 'php' ada di dalam string

Dengan cara ini, kami dapat menggabungkan fungsi burst() dan in_array() untuk memeriksa apakah ada teks dalam string

4. Menggunakan fungsi strstr() atau stristr()

Fungsi strstr() mencari kemunculan pertama teks dalam string.

Sintaksis

strstr(string,cari,sebelum_cari)

Fungsi ini mengembalikan sisa string setelah kemunculan pertama dari teks pencarian

Parameter

ParameterRequirementDescriptionstringRequiredMenentukan string yang ingin kita periksa textsearchRequiredMenentukan teks yang kita cari. Jika parameter ini berupa angka, ia akan mencari karakter yang cocok dengan nilai ASCII dari numberbefore_searchOptional Ini adalah nilai boolean (benar atau salah) yang standarnya adalah "false". Jika disetel ke "true", ini mengembalikan bagian dari string sebelum kemunculan pertama dari parameter pencarian

Contoh

<?php
$str = "Hello World! My name is John. I love PHP";
echo strstr($str, "John");
_

Keluaran

Yohanes. Saya suka PHP

Ini memberi kita output dari string kita setelah kemunculan pertama teks pencarian "John"

Tapi karena yang kita inginkan dalam hal ini adalah untuk mengetahui apakah string berisi teks pencarian, yang ingin kita ketahui adalah apakah outputnya salah atau tidak. Jika hasilnya TIDAK salah, maka kita tahu bahwa string berisi teks. Lain, kita tahu itu tidak

Contoh

<?php
$str = "Hello World! My name is John. I love PHP";
if(strstr($str, "John") !== false){
  echo "The text ‘John’ exists in the string";
}
else{
  echo "The text ‘John’ doesn’t exist in the string";
}

Keluaran

Teks 'John' ada di string

Cara lain untuk memastikan apakah suatu string berisi teks menggunakan fungsi ini adalah dengan memeriksa panjang string yang dikembalikan. Jika panjang string keluaran lebih dari 0, maka pasti string tersebut berisi teks

Contoh

<?php
$str = "Hello World! My name is John. I love PHP";
if(strlen(strstr($str, "John")) > 0){
  echo "The text ‘John’ exists in the string";
}
else{
  echo "The text ‘John’ doesn’t exist in the string";
}
_

Keluaran

Teks 'John' ada di string

strstr() peka terhadap huruf besar-kecil. Jika Anda ingin melakukan pemeriksaan case-insensitive, gunakan stristr() sebagai gantinya. Keduanya bekerja persis sama kecuali untuk sensitivitas huruf besar-kecil

Fungsi PHP mana yang mencari teks tertentu dalam string *?

Penjelasan. Fungsi PHP strpos() mencari teks tertentu dalam string.

Fungsi apa yang digunakan untuk mencari teks tertentu dalam sebuah string?

Mencari Teks dalam String . Ini bekerja hanya dengan mencocokkan teks dasar string. Jika kecocokan ditemukan, lokasi dikembalikan. Strpos() allows you to check for specific text within a string. It works by simply matching a string's basic text. If a match is found, the location is returned.

Bagaimana cara mencari nilai dalam string di PHP?

Jawaban. Gunakan Fungsi PHP strpos() . Fungsi strpos() mengembalikan posisi kejadian pertama dari substring dalam sebuah string. Jika substring tidak ditemukan, ia mengembalikan false.

Fungsi mana yang mencari string di dalam string lain?

Mencari string di dalam string lain - strstr . Ini berarti bahwa strstr dapat digunakan untuk mendeteksi apakah suatu string berisi string lain.