PHP считает, что два одинаковых символа различны даже при одинаковой кодировке - PullRequest
0 голосов
/ 13 октября 2019

У меня есть функция PHP, которая сравнивает текстовые строки, чтобы запретить пользователю вводить URL-адреса. Но есть пользователь, которому удается вводить URL-адреса, вводя символы с другой кодировкой.

Например, эти два «o» PHP считают их разными даже при использовании iconv или mb_convert_encoding для соответствия кодировке.

$a = "o";
$b = "о";  // U+043E CYRILLIC SMALL LETTER O

if($a == $b){
    echo "equal";
}else{
    echo "different: ".mb_detect_encoding($a)." - ".mb_detect_encoding($b);
}

Есть ли какая-либо функция, которая ускользает от меня, так что оба "o" PHP считают их одинаковыми?

...