PHP在URL中使用cURL和GET请求


PHP Using cURL and GET request in URL

我使用的是cURL而不是file_get_contents,它在URL上运行良好,直到我在下面的URL上使用get请求变量代替城市。

在以下位置使用cURL:(工作)

$url = 'http://www.weather-forecast.com/locations/London/forecasts/latest';

然而,当用变量$city:替换"London"时,这种方法效果很好

URL: example.com/weather.php?city=London
$city = $_GET['city'];
$city = ucwords($city); 
$city = str_replace(" ", "", $city);
$url = 'http://www.weather-forecast.com/locations/".$city."/forecasts/latest';

我得到一个错误:The page you are looking for doesn't exist (404)

我的cURL函数做错了什么?这似乎与file_get_contents完美配合,是不是我缺少了什么

cURL功能

function curl_get_contents($url)
{
$ch = curl_init();
$timeout = 5;
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HEADER, false);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $timeout);
$data = curl_exec($ch);
curl_close($ch);
return $data;
}
$contents = curl_get_contents($url);
echo $contents;

请在url、中将双引号替换为单引号

$url = 'http://www.weather-forecast.com/locations/'.$city.'/forecasts/latest';