Membandingkan dua rentetan dan mengabaikan (tetapi tidak menggantikan) aksen. PHP
P粉476046165
2023-08-17 16:16:51
<p>Saya mendapat (sebagai contoh) dua rentetan: </p>
<pre class="brush:php;toolbar:false;">$a = "joao";
$b = "joão";
if (strtoupper($a) == strtoupper($b)) {
gema $b;
}</pre>
<p>Saya harap ia benar walaupun dengan loghat. Walau bagaimanapun, saya memerlukannya untuk mengabaikan aksen dan bukannya menggantikan, kerana saya perlu mengeluarkan "joão" dan bukannya "joao". </p>
<p>Semua jawapan yang saya lihat menggantikan "ã" dengan "a" dan bukannya menjadikan perbandingan itu benar. Saya telah membaca tentang normalisasi tetapi saya juga tidak dapat membuatnya berfungsi. Ada idea? Terima kasih. </p>
Saya ingin berkongsi penyelesaian elegan yang mengelakkan penggunaan htmlentiti dan tidak memerlukan penyenaraian semua penggantian aksara secara manual. Ini ialah terjemahan php dari posini.
Keluaran:
Hanya tukar simbol beraksen kepada rakan tanpa aksen dan bandingkan rentetannya. Fungsi dalam jawapan saya akan mengalih keluar aksen untuk anda.
Keluaran:
Demo