Comment utiliser PHP pour développer une fonction simple de requête météo en temps réel

PHPz
Libérer: 2023-09-24 12:40:01
original
1329 Les gens l'ont consulté

Comment utiliser PHP pour développer une fonction simple de requête météo en temps réel

Comment utiliser PHP pour développer une fonction simple de requête météo en temps réel

Avant-propos :
Avec le développement continu de la technologie, les gens accordent de plus en plus d'attention à la météo. Par conséquent, le développement d’un site Web ou d’une application doté d’une fonction de requête météo en temps réel est devenu une demande très populaire. Cet article utilise PHP comme langage de développement, présente comment utiliser PHP pour développer une fonction simple de requête météo en temps réel et fournit des exemples de code spécifiques.

1. Obtenir des données météorologiques
Pour mettre en œuvre la fonction de requête météo, vous devez d'abord obtenir des données météorologiques en temps réel. Il existe actuellement de nombreuses API météo sur le marché que les développeurs peuvent utiliser, telles que l'API Alibaba Cloud Weather, l'API Zephyr Weather, etc. Ces API fournissent généralement des interfaces HTTP et les données météorologiques peuvent être obtenues en envoyant des requêtes HTTP. Dans cet article, nous prenons l'API Zephyr Weather comme exemple.

  1. Enregistrer l'API Zephyr Weather
    Tout d'abord, vous devez créer un compte sur la plateforme de développement Zephyr Weather et créer une application. Une fois l'enregistrement terminé, vous pouvez obtenir une clé API, qui sera utilisée dans le code ultérieur.
  2. Appelez l'API Zephyr Weather
    Utilisez la fonction cURL de PHP pour envoyer facilement des requêtes HTTP. Voici un exemple de code pour obtenir des données météorologiques :
<?php
$key = 'your_api_key'; // 替换为您在和风天气平台上获得的API Key
$location = '北京'; // 替换为需要查询的城市名称
$url = 'https://devapi.qweather.com/v7/weather/now?key=' . $key . '&location=' . urlencode($location);

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);

$response = curl_exec($ch);
curl_close($ch);

$data = json_decode($response, true);
$weather = $data['now']['text'];
$temperature = $data['now']['temp'];

echo '当前天气:' . $weather . '<br>';
echo '当前温度:' . $temperature . '℃';
?>
Copier après la connexion

Dans le code, vous devez remplacer your_api_key par la clé API obtenue sur la plateforme météo Zefeng, et Beijing</code > avec Le nom de la ville à interroger. Envoyez une requête HTTP en appelant la fonction <code>curl_exec. Après avoir obtenu la réponse, utilisez la fonction json_decode pour analyser les données météorologiques au format JSON, puis obtenez la météo et la température actuelles, et affichez-les sur la page . your_api_key替换为在和风天气平台上获得的API Key,北京替换为需要查询的城市名称。通过调用curl_exec函数发送HTTP请求,在获得响应后,使用json_decode函数解析JSON格式的天气数据,然后获取当前的天气和温度,并输出到页面上。

二、设计天气查询界面
在获取了实时天气数据后,接下来需要设计一个用户界面,让用户可以输入城市名称,点击查询按钮来获取天气信息。

以下是一个简单的HTML表单,用于查询天气:

<!DOCTYPE html>
<html>
<head>
    <title>实时天气查询</title>
</head>
<body>
    <h1>实时天气查询</h1>
    <form action="query.php" method="post">
        <label for="city">城市名称:</label>
        <input type="text" id="city" name="city" required>
        <button type="submit">查询</button>
    </form>
</body>
</html>
Copier après la connexion

在代码中,使用了一个表单,表单的action属性指定了发送查询请求的URL,将其设置为query.php。用户在输入框中输入城市名称后,点击查询按钮,表单数据将被提交到query.php进行处理。

三、处理查询请求
在接收到查询请求后,需要解析请求数据,并调用和风天气API获取天气数据。

以下是query.php的代码示例:

<?php
if (!empty($_POST['city'])) {
    $key = 'your_api_key'; // 替换为您在和风天气平台上获得的API Key
    $location = $_POST['city'];
    $url = 'https://devapi.qweather.com/v7/weather/now?key=' . $key . '&location=' . urlencode($location);

    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, $url);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);

    $response = curl_exec($ch);
    curl_close($ch);

    $data = json_decode($response, true);
    $weather = $data['now']['text'];
    $temperature = $data['now']['temp'];

    echo '当前城市:' . $location . '<br>';
    echo '当前天气:' . $weather . '<br>';
    echo '当前温度:' . $temperature . '℃';
} else {
    echo '请输入要查询的城市名称。';
}
?>
Copier après la connexion

在代码中,首先检查$_POST['city']

2. Concevoir l'interface de requête météo

Après avoir obtenu les données météorologiques en temps réel, vous devez concevoir une interface utilisateur qui permet aux utilisateurs de saisir le nom de la ville et de cliquer sur le bouton de requête pour obtenir des informations météorologiques.

Ce qui suit est un formulaire HTML simple pour interroger la météo : 🎜rrreee🎜Dans le code, un formulaire est utilisé, et l'attribut action du formulaire spécifie l'URL pour envoyer la demande de requête, définissez-la vers query.php. Une fois que l'utilisateur a entré le nom de la ville dans la zone de saisie et cliqué sur le bouton de requête, les données du formulaire seront soumises à query.php pour traitement. 🎜🎜3. Traitez la demande de requête🎜Après avoir reçu la demande de requête, vous devez analyser les données de la demande et appeler l'API Zephyr Weather pour obtenir les données météorologiques. 🎜🎜Ce qui suit est un exemple de code de query.php : 🎜rrreee🎜Dans le code, vérifiez d'abord si $_POST['city'] est vide, sinon vide puis effectuez une opération de requête météo, sinon affichez les informations d'invite. La logique de la requête météo est la même que celle du code précédent pour obtenir des données météorologiques. 🎜🎜Résumé : 🎜Cet article explique comment utiliser PHP pour développer une fonction simple de requête météo en temps réel, comprenant l'obtention de données météorologiques, la conception de l'interface de requête et le traitement des requêtes de requête. Grâce aux appels API, des informations météorologiques en temps réel peuvent être obtenues et affichées sur l'interface utilisateur. 🎜

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal