PHP dilinde dizeler(string) nesneleriyle çalışmak için bir çok yerleşik işlev mevcuttur. Bu işlevleri kullanarak bir çok string işlemini rahatlıkla gerçekleştirebilirsiniz.
PHP’de string veriyi ters çevirmek için strrev fonksiyonu kullanılır. Fakat strrev fonksiyonu ile multibyte karakterleri çevirmek mümkün değildir. UTF-8 destekli multibyte karakterler çevirmek için kendi strrev fonksiyonumuzu yazmamız gerekir.
Aşağıdaki iki örneği de kullanarak string ifadeleri ters çevirebilirsiniz.
Yöntem 1: Mevcut yöntem PHP.net sitesinde sunulan örnek çözümdür.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | <?php function mb_strrev($str){ $r = ''; for ($i = mb_strlen($str); $i>=0; $i--) { $r .= mb_substr($str, $i, 1); } return $r; } //kullanım echo mb_strrev("☆❤world"); // echo "dlrow❤☆" ?> |
Yöntem 2: Github üzerinde sunulan bir çözüme ait yöntemdir.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | <?php function mb_strrev($text){ $str = iconv('UTF-8','ISO-8859-9',$text); $string = strrev($str); $str = iconv('ISO-8859-9', 'UTF-8', $string); return $str; } $text = "Ömer"; $str = mb_strrev($text); echo $str; ?> |
Kaynak:
Yorum yap