Mencari dan Mengganti dalam String
Menemukan dan mengganti teks dengan strpos, str_replace, dan str_contains.
Mencari dan Mengganti dalam String adalah pelajaran PHP Academy gratis di CoddyKit. Ini adalah pelajaran 2 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar PHP Academy, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus PHP Academy mencakup 4 pelajaran total.
Mencari Teks dalam Teks
PHP menyediakan banyak fungsi untuk menemukan subteks. Fungsi penting:
strpos()— menemukan posisi kemunculan pertamastrrpos()— menemukan posisi kemunculan terakhirstr_contains()— PHP 8, memeriksa keberadaanstr_starts_with()/str_ends_with()— PHP 8
Kemunculan Pertama
Mengembalikan posisi (berindeks mulai dari 0) pada kemunculan pertama, atau false jika tidak ditemukan:
<?php
$str = 'the quick brown fox';
$pos = strpos($str, 'brown');
echo $pos; // 10
// Always use === to check for false (0 is also falsy!)
if (strpos($str, 'quick') !== false) {
echo 'Found!';
}str_contains, str_starts_with, str_ends_with
PHP 8 menambahkan fungsi pembantu boolean yang lebih sederhana ini:
<?php
$email = 'user@example.com';
var_dump(str_contains($email, '@')); // true
var_dump(str_starts_with($email, 'user')); // true
var_dump(str_ends_with($email, '.com')); // true
var_dump(str_ends_with($email, '.org')); // falsePenggantian Teks
Ganti semua kemunculan teks pencarian dengan teks pengganti:
<?php
$template = 'Hello {name}, your order #{id} is ready.';
$result = str_replace(
['{name}', '{id}'],
['Alice', '4521'],
$template
);
echo $result;
// Hello Alice, your order #4521 is ready.str_ireplace() — Tanpa Membedakan Huruf Besar-Kecil
str_ireplace() bekerja seperti str_replace(), tetapi tidak membedakan huruf besar-kecil:
<?php
$text = 'PHP is great. php is powerful. PHP is fun.';
$result = str_ireplace('php', 'PHP 8', $text);
echo $result;
// PHP 8 is great. PHP 8 is powerful. PHP 8 is fun.Mengganti Bagian Teks
Ganti bagian teks berdasarkan posisi dan panjangnya:
<?php
$str = 'Hello World';
echo substr_replace($str, 'PHP', 6, 5);
// Hello PHP
// Replace from end
echo substr_replace($str, '!', -1);
// Hello Worl!Menghitung Kemunculan Subteks
Hitung berapa kali subteks muncul:
<?php
$text = 'to be or not to be';
echo substr_count($text, 'be'); // 2
echo substr_count($text, 'to'); // 2
echo substr_count($text, 'or'); // 1preg_replace() — Penggantian dengan Ekspresi Reguler
Gunakan pola ekspresi reguler untuk penggantian yang kompleks:
<?php
$html = '<p>Hello <b>World</b></p>';
// Strip HTML tags
$plain = preg_replace('/<[^>]+>/', '', $html);
echo $plain; // Hello World
// Replace multiple spaces with one
$spaced = 'too many spaces';
echo preg_replace('/\s+/', ' ', $spaced);
// too many spacesPelolosan HTML untuk Mencegah XSS
Selalu lakukan escape pada masukan pengguna sebelum menampilkannya sebagai HTML untuk mencegah serangan XSS:
<?php
$userInput = '<script>alert("hacked")</script>';
// Dangerous:
echo $userInput; // executes script!
// Safe:
echo htmlspecialchars($userInput, ENT_QUOTES, 'UTF-8');
// <script>alert("hacked")</script>Menghitung Penggantian
str_replace() dapat melaporkan jumlah penggantian yang dilakukan melalui parameter keempat opsional:
<?php
$text = 'cat and cat and cat';
$count = 0;
$result = str_replace('cat', 'dog', $text, $count);
echo $result; // dog and dog and dog
echo $count; // 3Mengisi Panjang Teks
Isi teks hingga mencapai panjang yang diinginkan untuk pemformatan:
<?php
echo str_pad('42', 8); // '42 ' (right-pad)
echo str_pad('42', 8, '0', STR_PAD_LEFT); // '000042'
echo str_pad('PHP', 7, '-', STR_PAD_BOTH); // '--PHP--'Pemeriksaan Singkat
Fungsi PHP 8 mana yang memeriksa apakah teks diawali dengan awalan tertentu?
Ringkasan: Mencari dan Mengganti
Fungsi penting:
strpos/strrpos— menemukan posisi (gunakan pemeriksaan === false)str_contains/starts_with/ends_with— fungsi pembantu boolean PHP 8str_replace/str_ireplace— penggantian sederhanapreg_replace— penggantian berbasis ekspresi regulerhtmlspecialchars— melakukan escape untuk keluaran HTML
Pertanyaan yang Sering Diajukan
Apakah pelajaran “Mencari dan Mengganti dalam String” gratis?
Ya — teks lengkap “Mencari dan Mengganti dalam String” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus PHP Academy, upgrade ke CoddyKit PRO. Kursus PHP Academy mencakup 4 pelajaran total.
Apa yang akan aku pelajari di “Mencari dan Mengganti dalam String”?
Menemukan dan mengganti teks dengan strpos, str_replace, dan str_contains. Kamu berlatih PHP Academy dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.
Apakah aku perlu pengalaman untuk memulai PHP Academy?
Tidak diperlukan pengalaman sebelumnya. PHP Academy di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 2 dari 4.
Berapa lama pelajaran “Mencari dan Mengganti dalam String” memakan waktu?
Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.
Bisakah aku menulis dan menjalankan kode dalam pelajaran PHP Academy ini?
Ya. Setiap pelajaran PHP Academy menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.
Semua pelajaran dalam kursus ini
- Dasar-Dasar String dan Penggabungan
- Mencari dan Mengganti dalam String
- Fungsi Substring dan Padding
- Memisahkan dan Menggabungkan String