Не получается сравнить строки
Всем привет! У меня такая задача, получить код страны пользователя сравнить его и вернуть результат.
// Получаю ip клиента
$ip = $_SERVER['REMOTE_ADDR'];
function get_country($ip) {
// получаю код страны
return file_get_contents("http://ipinfo.io/{$ip}/country");
}
// Кладу код страны в переменную
$countryCode = get_country($ip); //
// Пытаюсь сравнить
if (strcasecmp($countryCode, 'RU') == 0) {
echo 'Russia';
} else {
echo 'Not work'; // получаю это
}
echo gettype($countryCode); // возвращает string
var_dump($countryCode); // возвращает NULL
//Классическое сравнение тоже не работает
if ($countryCode == 'RU') {
echo 'Russia';
}
Вопрос в том как сравнить строку которую возвращает сервис?
Заранее спасибо!
Ответы (1 шт):
Автор решения: Max Watson
→ Ссылка
Спасибо, поправил все таким образом. На всякий случай преоброзовал еще раз код страны в string и потом просто $countryCode != 'RU'
$ip = $_SERVER['REMOTE_ADDR'];
function get_country($ip) {
return file_get_contents("http://ipinfo.io/{$ip}/country");
}
$countryCode = strval(get_country($ip));
if ($countryCode != 'RU') {
echo 'Russia';
} else {
echo 'Not work';
}