Membalik urutan teks mungkin terdengar seperti trik iseng, tetapi punya kegunaan nyata: memeriksa apakah sebuah kata adalah palindrom (dibaca sama dari depan dan belakang), atau mengolah data yang tersimpan terbalik. Artikel ini membahas cara membalik string di PHP.
Fungsi strrev()
<?php
echo strrev("halo"); // "olah"
?>
Contoh Kasus: Memeriksa Palindrom
<?php
function palindrom($kata) {
$kata = strtolower($kata);
return $kata === strrev($kata);
}
var_dump(palindrom("katak")); // true
var_dump(palindrom("meja")); // false
?>
Jebakan Huruf Beraksen dan Emoji
strrev() membalik per byte, sehingga merusak karakter UTF-8 multi-byte. Untuk teks ber-aksen, balikkan per huruf dengan pendekatan multibyte:
<?php
function mb_strrev($teks) {
return implode('', array_reverse(mb_str_split($teks)));
}
echo mb_strrev("café"); // "éfac" (huruf tetap utuh)
?>
Kesalahan Umum
- Memakai
strrev()pada teks dengan aksen sehingga muncul karakter rusak. - Lupa menyamakan huruf besar-kecil saat memeriksa palindrom.
Kesimpulan
Gunakan strrev() untuk teks ASCII sederhana seperti pemeriksaan palindrom. Untuk teks yang mungkin mengandung karakter multi-byte, gunakan pendekatan array_reverse(mb_str_split()) agar setiap huruf tetap utuh.
Referensi: untuk penjelasan lebih mendalam, kunjungi dokumentasi resmi PHP (php.net).

