Qui pour contrôler ma première boucle foreach

Résolu/Fermé
flexi2202 Messages postés 3799 Date d'inscription lundi 14 mars 2011 Statut Membre Dernière intervention 16 mai 2024 - 19 avril 2021 à 15:17
flexi2202 Messages postés 3799 Date d'inscription lundi 14 mars 2011 Statut Membre Dernière intervention 16 mai 2024 - 23 avril 2021 à 00:56
bonjour a tous

il me reste encore une petite dernière chose a régler sur mon site je pense avoir trouve le bon code , mais j aurais besoin de savoir si tout est correct

j utilise openweather pour récupérer les données météo et pour l instant j en suis aux prévisions pour les 48 prochaines heures avec toutes les infos disponibles pour chaque heure

pour les récupérer , j ai compris le principe
mais cela fait beaucoup beaucoup de lignes
j intègre donc un accordion de boostrap avec 48 onglets et dans chaque onglet une fois ouvert rassemble l ensemble des infos de la météo pour l heure donnée

pour éviter d avoir un code trop long je me suis juste limiter pour l exemple a récupérer quelques données

si vous pouviez juste me confirmer que cela est al bonne pratique

  <?php

 $url = "https://api.openweathermap.org/data/2.5/onecall?lat=50.40965313355853&lon=4.441598958007829&exclude=current,minutely,alerts&lang=fr&units=metric&appid=e30eac7b1e60d534d109bfad513a4d9a";

 $raw = file_get_contents($url);
$json = json_decode($raw);
 $i=1;
  
foreach ($json->hourly as $hourly) {
$hourly->dt; // le timestamp du jour, tu as aussi sunrise, sunset, etc
$hourly->temp; // les températures
$hourly->weather; // la météo avec $daily->weather[0]->main; $daily->weather[0]->description; etc

?>

<div class="accordion" id="accordionExample">
 
  <div class="card">
    <div class="card-header" id="heading-<?php echo $i; ?>">
      <h2 class="mb-0">
        <button class="btn btn-link btn-block text-left collapsed" type="button" data-toggle="collapse" data-target="#collapse-<?php echo $i; ?>" aria-expanded="false" aria-controls="collapse-<?php echo $i; ?>">
         <?php print_r($hourly->dt) ;?>
        </button>
      </h2>
    </div>
    <div id="collapse-<?php echo $i; ?>" class="collapse" aria-labelledby="heading-<?php echo $i; ?>" data-parent="#accordionExample">
      <div class="card-body">
        <?php print_r($hourly->weather) ;?>
      </div>
    </div>
  </div>

<?php  
$i++;
 }
?>
</div>

4 réponses

yg_be Messages postés 23233 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 29 septembre 2024 Ambassadeur 1 538
19 avril 2021 à 16:38
bonjour,
à quoi servent les lignes 10 à 12?
0
flexi2202 Messages postés 3799 Date d'inscription lundi 14 mars 2011 Statut Membre Dernière intervention 16 mai 2024 187
19 avril 2021 à 16:53
bonjour
j extrais les données que j ai besoin pour les afficher plus loin
0
yg_be Messages postés 23233 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 29 septembre 2024 1 538
19 avril 2021 à 17:51
je pense que ces lignes sont inutiles, la ligne 22 combinant l'extraction et l'affichage.
si tu veux vraiment faire cela en deux étapes:
$dt = $hourly->dt;
print_r($dt);
0
yg_be Messages postés 23233 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 29 septembre 2024 1 538 > yg_be Messages postés 23233 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 29 septembre 2024
19 avril 2021 à 21:20
peux-tu marquer la discussion comme résolue?
0
flexi2202 Messages postés 3799 Date d'inscription lundi 14 mars 2011 Statut Membre Dernière intervention 16 mai 2024 187
22 avril 2021 à 23:06
bonsoir désolé du retard
en effet cela est résolu
encore merci pour l aide
0
dachiasse Messages postés 1709 Date d'inscription samedi 12 septembre 2020 Statut Membre Dernière intervention 13 mai 2021 149
23 avril 2021 à 00:24
Salut,

Tu as oublié de cliquer sur le bouton adéquat.
0
flexi2202 Messages postés 3799 Date d'inscription lundi 14 mars 2011 Statut Membre Dernière intervention 16 mai 2024 187
23 avril 2021 à 00:56
salut
merci du rappel
0