PHP 5 Cours et exercices 2e Edition
Après avoir consulté le résultat affiché par l’exemple 8-1,déterminer la date et l’heure de l’exécution de ce script. Le timestamp en question vaut 1251364995 .
<?php
echo date("\L\e d / M / Y à H:m:s",1098480456);
?>
Le résultat affiché est : « Le 27 / Aug / 2009 à 11:08:15»Calculez votre age à l’instant actuel à la seconde près. Le script suivant ne fonctionne pas en local sous Windows et affiche le message suivant : «Warning: mktime() [function.mktime]: Windows does not support negative values for this function in c:\wamp\www\php5\C8dates\ch8exo2.php on line2 ».
En effet Windows n’accepte pas les timestamps négatifs et dans l’exemple la date de naissance est antérieure à 1970. En revanche, sur un serveur externe sous Linux, le script fonctionne.
<?php $datenaiss= mktime(9,15,45,1,21,1962); $aujourdhui=time(); $age=$aujourdhui - $datenaiss; echo "Mon age est de $age secondes"; ?>On obtient par exemple : Mon age est de 1502970188 secondes
Vérifiez si la date du 29 Février 1962 a existé.
<?php
if(checkdate(2,29,1962)) {echo "Date valide";}
else{echo "Date non valide";}
?>
Le résultat est : « Date non valide »Quel jour de la semaine était le 3 mars 1993 ? Affichez le résultat en français.
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Afficher le jour de la semaine en français
</head>
<body>
<?php
//Date en français
$jour = mktime(0,0,0,3,3,1993);
$semaine = array(" dimanche "," lundi "," mardi "," mercredi "," jeudi "," vendredi "," samedi ");
$num=date('w',$jour);
echo "<h2>Le ",date("d M Y ",$jour)," était un ", $semaine[$num], "</h2>";
?>
</body>
</html>
Le résultat est : Le 03 Mars 1993 était un mercrediAffichez toutes les années bissextiles comprises entre 2005 et 2052.
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">Les résultats affichés sont :Afficher les années bissextiles </head> <body> <?php for($i=2005;$i<=2052;$i++) { $date=mktime(0,0,0,1,1,$i); if(date("L",$date)==1) {echo "L'année $i est bissextile
";} } ?> </body> </html>
Déterminez quel jour de la semaine seront tous les premier Mai des années comprises entre 2010 et 2018. Si le jour est un samedi ou un dimanche, affichez le message « Désolé !». Si le jour est un vendredi ou un lundi affichez « Week end prolongé !».
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Afficher jours de 1er mai </title>
</head>
<body>
<p>
<?php
for($i=2010;$i<=2018;$i++)
{
$date=mktime(0,0,0,5,1,$i);
if(date("w",$date)==6 OR date("w",$date)==0 ) {echo "1<sup>er</sup> Mai $i : Désolé<br />";}
elseif(date("w",$date)==5 OR date("w",$date)==1 ) {echo "1<sup>er</sup> Mai $i : Week end prolongé<br />";}
}
?>
</p>
</body>
</html>
Les résultats affichés sont :L’Ascension est le quarantième jour après Pâques (Pâques compris dans les 40 jours). Calculez les dates de l’Ascension pour les années 2010 à 2015.
<?php
for($i=2010;$i<2016;$i++)
{
echo "Jour de Paques : ",date("d M Y ",easter_date($i)),"<br />";
echo "Jour de l'Ascension ",date("d M Y
",easter_date($i)+39*86400),"<br />";
}
?>
Les résultats obtenus sont les suivants :