这是一个api:=>
http://www.google.com/ig/api?weather=[city name]
当我手动输入 [城市名称] ,如http://www.google.com/ig/api?weather=dhaka
然后,它完美无缺。有任何方法可以获取城市名称的用户输入。
<?
$xml = simplexml_load_file('http://www.google.com/ig/api?weather=dhaka'); //Manually,I put 'dhaka' here
$information = $xml->xpath("/xml_api_reply/weather/forecast_information");
$current = $xml->xpath("/xml_api_reply/weather/current_conditions");
$forecast_list = $xml->xpath("/xml_api_reply/weather/forecast_conditions");
?>
<html>
<head>
<title>Google Weather API</title>
</head>
<body>
<h1><?= print $information[0]->city['data']; ?></h1>
<h2>Today's weather</h2>
<div class="weather">
<img src="<?= 'http://www.google.com' . $current[0]->icon['data']?>" alt="weather"?>
<span class="condition">
<?= $current[0]->temp_f['data'] ?>° F,
<?= $current[0]->condition['data'] ?>
</span>
</div>
<h2>Forecast</h2>
<? foreach ($forecast_list as $forecast) : ?>
<div class="weather">
<img src="<?= 'http://www.google.com' . $forecast->icon['data']?>" alt="weather"?>
<div><?= $forecast->day_of_week['data']; ?></div>
<span class="condition">
<?= $forecast->low['data'] ?>° F - <?= $forecast->high['data'] ?>° F,
<?= $forecast->condition['data'] ?>
</span>
</div>
<? endforeach ?>
</body>
</html>
提前致谢。
答案 0 :(得分:2)
使用html表单,从$ _GET / $ _POST和rawurlencode()获取输入到api url。
答案 1 :(得分:2)
您可以创建表单
<form method="post">
City <input type="text" name="cityName">
<br>
<input type="submit">
</form>
并将$xml = simplexml_load_file('http://www.google.com/ig/api?weather=dhaka');
更改为$xml = simplexml_load_file('http://www.google.com/ig/api?weather='.$_POST['cityName']);