Non authentifié
Cross

L'équipe Orbideo vous présente ses Meilleurs Voeux pour 2009 !

MC8wMDAvMDExLzAwMDAw ~[V€€Rm$³] a écrit le 14 février 2007 14:35
PHP vous donne l'heure, de sa montre...

Bonjour à tous,

PHP sait vous donner l'heure courante du serveur en une seule fonction: date("H:i");
Ce n'est pas nouveau, donc pas très originale.

Alors comme j'aime GD, je me suis dit que j'allais le mettre dans une image...
Mais pas uniquement de manière numérique avec imagestring();

Nous allons donc afficher: une HORLOGE! (du moins, le cadran :p)

Le code:
header ("Content-type: image/png");
$unite = 400;
$image = imagecreate($unite, $unite);

$white = imagecolorallocate($image, 255, 255, 255);
$black = imagecolorallocate($image, 0, 0, 0);
$red = imagecolorallocate($image, 255, 0, 0);

/* 1°. On crée le fond de l'horloge */
imageellipse ( $image, $unite/2, $unite/2, $unite/2, $unite/2, $black);

for($i=0;$i imageline($image, cos(deg2rad($i))*$unite/4+$unite/2, sin(deg2rad($i))*$unite/4+$unite/2, -cos(deg2rad($i))*$unite/4+$unite/2, -sin(deg2rad($i))*$unite/4+$unite/2,$black);}

imagefilledellipse ( $image, $unite/2, $unite/2, $unite/2-20, $unite/2-20, $white);

/* 2°. On affiche l'heure numériquement */
$heures = 90-date("g")*30;
$minutes = 90-date("i")*6;
imagestring($image, 5, $unite/2-30, $unite/2+30, date("H")." : ".date("i"), $red);

/* 3°. On affiche les aiguilles */
imagesetthickness ( $image, 5);
imageline( $image, $unite/2, $unite/2, cos(deg2rad($heures))*$unite/6+$unite/2, -sin(deg2rad($heures))*$unite/6+$unite/2,$black);
imagesetthickness ( $image, 3);
imageline( $image, $unite/2, $unite/2, cos(deg2rad($minutes))*$unite/5+$unite/2, -sin(deg2rad($minutes))*$unite/5+$unite/2,$black);

imagepng($image);
?>

L'exemple:
 

  • Cet article a été lu 33 fois
0 0
Tags: Help
 

1 commentaire

Frimeur Face-smile

~Yannick a dit il y a 1 an
MC8wMDAvMDMzLzAwMDAw

Ajoutez votre commentaire:

Votre commentaire :
Une inscription vous sera demandée pour valider ce commentaire. Déjà membre d'Orbideo ? Identifiez-vous