私はcurlとphpで初心者です。実際に私はこのサンプルコードで作業しています:PHPのカール出力はエンコードされていますか?私のIFは間違っていますか?
私はこのAPIを使って改行(\ n)で応答を受け取ります。
$client_ip = @$_SERVER['HTTP_CLIENT_IP'];
$forward_ip = @$_SERVER['HTTP_X_FORWARDED_FOR'];
$remote_ip = $_SERVER['REMOTE_ADDR'];
if (filter_var($client_ip, FILTER_VALIDATE_IP)){
$visitor_ip = $client_ip;
} elseif (filter_var($forward_ip, FILTER_VALIDATE_IP)){
$visitor_ip = $forward_ip;
} else {
$visitor_ip = $remote_ip;
}
$url = "http://ip-api.com/line/".$visitor_ip."?fields=city";
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL,$url);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
$visitor_city = curl_exec($curl);
curl_close($curl);
echo $visitor_city;
結果:
New York
結果は正しいです。私はニューヨークにいる、コードは私の街を示している。しかし、私は間違っているとして、IF何かを追加する場合:と
if ($visitor_city == "New York") {
echo " TRUE!";
}
マイ結果、この場合:
New York
しかし、私はミス何かをしていた結果
New York TRUE!
場合、私はしたいですか?サーバー構成ですか?
あなたは' var_dimp($ visitor_city)の出力であるかを示すことができますか? –