2016-05-18 2 views
2

Вот мой код:Почему эти две строки не совпадают с PHP?

$city = $_GET['city']; 
$cityfinal = htmlentities($city, ENT_QUOTES | ENT_IGNORE, "UTF-8"); 

similar_text($cityfinal, "CITY OF BIÑAN", $percent); 

echo "Differnce between " . $cityfinal . " and CITY OF BIÑAN is " . $percent; 

Результат:

Разница между ГОРОДОМ Binan и ГОРОДОМ Binan является 72,7272727273

+0

Что вы хотите ?? % 0? –

+0

Символ 'Ñ' кодируется как' Ñ ', и это означает, что тексты' CITY OF BI Ñ AN' и 'CITY OF BIÑAN' не то же самое – Gvidas

+0

Как добиться результата по этому, извините, новичок в php. $ result = mysql_query ("SELECT DISTINCT barangay FROM operations WHERE provinces = '$ province' And cities = '$ cityfinal' order by barangay"); –

ответ

1

Вашего сравнения строка не конвертируется в htmlentities так его подача вы разница. Попробуйте конвертировать его и проверить.

Здесь специальный символ BIÑAN закодирован в строке $_GET['city'], но остается с заданной строкой сравнения.

$city = $_GET['city']; 
$checkcity ="CITY OF BIÑAN"; 
$cityfinal = htmlentities($city, ENT_QUOTES | ENT_IGNORE, "UTF-8"); 
$cityCheckwith = htmlentities($checkcity, ENT_QUOTES | ENT_IGNORE, "UTF-8"); 

similar_text($cityfinal, $cityCheckwith, $percent); 

echo "Differnce between " . $cityfinal . " and CITY OF BIÑAN is " . $percent; 

Выход

Differnce между ГОРОД Бянь и ГОРОД Binan является 100

Check Online Demo: Click Here

+0

Используйте код выше, он работает определенно и соответствует вашим ожиданиям. @Kacey Manalac – RJParikh

+0

Причина, по которой я спросил, это то, что я получаю нулевой результат в моем запросе: $ result = mysql_query ("SELECT DISTINCT barangay FROM operations WHERE' provinces' = '$ province' and 'cities' = '$ cityfinal' order барангаем "); –

+0

Попробуйте использовать LIKE: '$ result = mysql_query (" SELECT DISTINCT barangay FROM operations WHERE provinces LIKE% '$ province'% И города LIKE% '$ cityfinal'% order by barangay' – RJParikh

Смежные вопросы