Bouts de Codes PHP

Calcul du lever et coucher du soleil n'importe quand et n'importe ou sur terre.

Information sur le code source PHP

Ecrit par :  Olravet
Site de l'auteur Voir
Codes en PHP de l'auteur : [3] sources Voir
Enregistrement le 07 Mai 2008 - Vu 6801 fois
Impression: Imprimer le code
Pas encore
de vote

Description du code source

Information sur le code source

Avec ce code vous pourrez savoir quand le soleil se couche et quand il se lève de n'importe quel ville du monde.
Pour cela vous devrez lancer le script en paramétrant l'url pour fournir la ville, la latitude et la longitude. En argument (après l'extension du fichier .php) vous ajoutez les arguments comme ceci:

?ville=NomVille&la=Latitude&Lo=Longitude.

Avec Latitude en degrés décimaux (Nord = +)
Longitude en degrés décimaux (Ouest = +)
( A défaut on tombe à Paris)
Vous pouvez demander une date différente en ajoutant &mois=03&jour=17 et les horaires arrivent pour le 17 mars... (à défaut, c'est la date du jour qui est prise en compte.)

Code Source



.01
.02
.03
.04
.05
.06
.07
.08
.09
.10
.11
.12
.13
.14
.15
.16
.17
.18
.19
.20
.21
.22
.23
.24
.25
.26
.27
.28
.29
.30
.31
.32
.33
.34
.35
.36
.37
.38
.39
.40
.41
.42
.43
.44
.45
.46
.47
.48
.49
.50
.51
.52
.53
.54
.55
.56
.57
.58
.59
.60
.61
.62
.63
.64
.65
.66
.67
.68
.69
.70
.71
.72
.73
.74
.75
.76
.77
.78
.79
.80
.81
.82
.83
.84
.85
.86
.87
.88
.89
.90
.91
.92
.93
.94
.95
.96
.97
.98
.99
.100
.101
.102
.103
.104
.105
.106
.107
 

<?php
/******************************************************************************/
/*                                                                            */
/*                       __        ____                                       */
/*                 ___  / /  ___  / __/__  __ _____________ ___               */
/*                / _ \/ _ \/ _ \_\ \/ _ \/ // / __/ __/ -_|_-<               */
/*               / .__/_//_/ .__/___/\___/\_,_/_/  \__/\__/___/               */
/*              /_/       /_/                                                 */
/*                                                                            */
/*                                                                            */
/******************************************************************************/
/*                                                                            */
/* Titre          : Calcul du lever et coucher du soleil n'importe quand et...*/
/*                                                                            */
/* URL            : http://www.phpsources.org/scripts385-PHP.htm              */
/* Auteur         : Olravet                                                   */
/* Date édition   : 07 Mai 2008                                               */
/* Website auteur : http://olravet.fr/                                        */
/*                                                                            */
/******************************************************************************/
?>
<?
IF ($fh == "") {$fh date("H") - gmdate("H") ;}
IF ($La == "") { $La 48.833;}
IF ($Lo == "") { $Lo = -2.333;}
IF ($ville == "") { $ville "Paris";}
IF ($mois == "") {$mois date("m") ;}
IF ($jour == "") {$jour date("d") ;}
// Fuseau horaire et coordonnées géographiques
$k 0.0172024;
$jm 308.67;
$jl 21.55;
$e 0.0167;
$ob 0.4091;
$PI3.1415926536;
//Hauteur du soleil au lever et au coucher
$dr $PI180;
$hr $PI12;
$ht = (-40 60);
$ht $ht $dr;
$La $La $dr;
$Lo $Lo $dr;
//Date
IF ($mois 3) {
$mois $mois 12;
}
//Heure TU du milieu de la journée
$h 12 + ($Lo $hr);
//Nombre de jours écoulés depuis le 1 Mars O h TU
$J floor(30.61 * ($mois 1)) + $jour + ($h 24) - 123;
//Anomalie et longitude moyenne
$M $k * ($J $jm);
$L $k * ($J $jl);
//Longitude vraie
$S =$L $e Sin($M) + 1.25 $e $e Sin($M);
//Coordonnées rectangulaires du soleil dans le repère équatorial
$X Cos($S);
$Y Cos($ob) * Sin($S);
$Z Sin($ob) * Sin($S);
//Equation du temps et déclinaison
$R $L;
$rx Cos($R) * $X Sin($R) * $Y;
$ry = -Sin($R) * $X Cos($R) * $Y;
$X $rx;
$Y $ry;
$ET atan($Y $X);
$DC atan($Z Sqrt($Z $Z));
//Angle horaire au lever et au coucher
$cs = (Sin($ht) - Sin($La) * Sin($DC)) / Cos($La) / Cos($DC);
IF ($cs 1) { $CalculSol "Ne se lève pas";}
IF ($cs < -1) { $CalculSol "Ne se couche pas";}
IF ($cs == 0) {
$ah $PI 2;
}ELSE{
$ah atan(Sqrt($cs $cs) / $cs);
}
IF ($cs 0) { $ah $ah $PI;}
//Lever du soleil
$Pm $h $fh + ($ET $ah) / $hr;
IF ($Pm 0) { $Pm $Pm 24;}
IF ($Pm 24) { $Pm $Pm 24;}
$hs floor($Pm);
$Pm floor(60 * ($Pm $hs));
IF (strlen($hs)<2) {$hs "0".$hs;}
IF (strlen($Pm)<2) {$Pm "0".$Pm;}
IF ($CalculSol ==""){
$lev $hs":" .$Pm;
}ELSE{
$lev "---";}
//Coucher du soleil
$Pm $h $fh + ($ET $ah) /$hr;
IF ($Pm 24) { $Pm $Pm 24;}
IF ($Pm 0) { $Pm $Pm 24;}
$hs floor($Pm);
$Pm floor(60 * ($Pm $hs));
IF (strlen($hs)<2) {$hs "0".$hs;}
IF (strlen($Pm)<2) {$Pm "0".$Pm;}
IF ($CalculSol ==""){
$couch $hs":" .$Pm;
}ELSE{
$couch  "---";}
ECHO "Horaires du Soleil à ".$ville."<BR>";
ECHO "Lever = " .$lev ;
ECHO "<br>";
ECHO "Coucher = "$couch;
?>

Fonctions du code source

Fonctions php / mysql PHP

  • date : Formate une date/heure locale - (PHP 4, PHP 5)
  • gmdate : Formate une date/heure GMT/CUT - (PHP 4, PHP 5)
  • floor : Arrondit à l'entier inférieur - (PHP 4, PHP 5)
  • sin : Sinus - (PHP 4, PHP 5)
  • cos : Cosinus - (PHP 4, PHP 5)
  • atan : Arc tangente - (PHP 4, PHP 5)
  • sqrt : Racine carrée - (PHP 4, PHP 5)
  • strlen : Calcule la taille d'une chaîne - (PHP 4, PHP 5)
  • echo : Affiche une chaîne de caractères - (PHP 4, PHP 5)

Poster un commentaire

:P :)
:wink: :lol:
:surprised: :confused:
:idea: :no:
Taille du texte:
Couleur:
 
Code de sécurité
Offres d'emploi
Librairie

Langages de programmation

La librairie est ouverte à tous et elle est accès principalement sur les langages PHP et MySQL. Vous trouverez aussi d'autres langages de programmation tel que le CSS, HTML, AJAX, ASP.. Plus de 300 références facilement accessibles. Visiter

  • MySQL et PHP : Site web dynamique
  • PHP 5.2 - Développer un site Web dynamique et interactif
  • PHP 5
  • Php 5
  • XHTML
  • PHP & MySQL et CSS
  • PHP à 200% : 100 techniques pour dynamiser vos sites web
  • PHP 5.2 et APACHE 2 - Maîtrisez le développement et le déploiement de votre site web interactif [Nouvelle version]
  • CSS (1 et 2.1) - JavaScript - DHTML : Maîtrisez l'interactivité de vos pages web Pack 2 volumes
  • Formation à HTML