Cet article vous apprendra comment faire un calendrier en PHP. Voici des scripts de calendrier PHP gratuit. Ou vous pouvez directement dans le site phpkode.com pour plus de didacticiels PHP gratuits.
Pas
1. Recueillir les informations nécessaires qui sont importantes pour afficher le mois actuel et mettre en évidence la journée réelle. En plus de cela, vous voulez afficher le mois et l`année actuels. Pour ce faire, vous aurez besoin de 3 entrées de jour spéciales: le jour même, le premier jour du mois actuel, le dernier jour du mois actuel
![Image intitulée Créer un calendrier dans PHP Étape 2](https://cdn.maniqui-es.com/kiw/how-to-create-a-calendar-in-php_7.jpg)
2. Déterminer quel jour était le premier jour, combien de temps dure le mois et, bien sûr, qui est la journée réelle, avec les informations ci-dessus.
3.
Utilisez la fonction intégrée PHP: avoir un rendez-vous()
. Sans paramètres, cette fonction renvoie les informations de jour réelles dans une matrice comme suit:
11 | [jour de semaine] => Mardi |
Pour obtenir le dernier jour du mois avec Date d`obtention d`obtention, nous devons essayer d`obtenir le 0. jour du mois prochain. Donc, le code pour obtenir l`information ressemble à ceci:
2 | $ aujourd`hui Englisons avoir un rendez-vous ()- |
3 | $ premier jour Englisons avoir un rendez-vous ( mktime (0,0,0, $ aujourd`hui [ `lun` ],1, $ aujourd`hui [ `an` ])))- |
4 | $ latement Englisons avoir un rendez-vous ( mktime (0,0,0, $ aujourd`hui [ `lun` ] +1,0, $ aujourd`hui [ `an` ])))- |
Étape 3.Pour afficher un calendrier, nous avons besoin d`une table avec 7 colonnes pour les jours de la semaine. Le nombre de lignes en fonction du nombre de jours et du premier jour du mois. Cependant, nous avons besoin d`une ligne d`en-tête avec des informations sur le mois et l`année, une ligne de sous-titre avec le nom des jours.
2 | // Créer une table avec les informations d`en-tête nécessaires |
3 | écho `` - |
"-
4 | écho " |
". $ aujourd`hui [ `mois` ]. " - " . $ aujourd`hui [ `an` ]. " |
---|
"-
"-
6 | écho " | Moche | Toupette | Nous | E |
"-
![Image intitulée Créer un calendrier dans PHP Étape 3](https://cdn.maniqui-es.com/kiw/how-to-create-a-calendar-in-php_8.jpg)
Maintenant que vous avez l`en-tête de la table, remplissez la première ligne. Ce n`est pas si facile que vous ne pouvez pas simplement écrire 1 dans la première cellule, 2 dans la seconde et ainsi de suite. Cela ne fonctionne que si le premier jour du mois était lundi, mais quoi sinon? Pour décider de cela, nous avons besoin de l`élément de jour du tableau de premier jour. Avec cette information, nous pouvons remplir les cellules avec un espace si nécessaire. Le code pour le faire est le suivant:"-
03 | pour ( $ i = 1- $ i < $ premier jour [ "samis" ]- $ i ++) { |
"-
07 | pour ( $ i Englisons $ premier jour [ "samis" ]- $ i <= 7- $ i ++) { |
"-
"-
À l`étape suivante, nous devons remplir les lignes suivantes. Il est un peu plus facile, nous n`avons besoin que de savoir combien de semaine complètes nous avons et remplissait des rangées de table comme suit: 02 | $ Fullweeks Englisons étage ((( $ latement [ "Mdaille" ]- $ actday )/7)- |
04 | pour ( $ i = 0- $ i < $ Fullweeks - $ i ++) { |
"-
06 | pour ( $ j = 0- $ j <7- $ j ++) { |
"-
"-
Comme étape semi-finale, nous devons ajouter le reste du mois à la dernière ligne. Dans ce cas, il est assez facile: 02 | si ( $ actday < $ latement [ "Mdaille" ]) { |
"-
04 | pour ( $ i = 0- $ i <7- $ i ++) { |
06 | si ( $ actday $ latement [ "Mdaille" ]) {
|
"-
"-
"-
Étape 7.Pour rendre le calendrier petit bit plus gentil, nous introduirons une conception CSS. Le fichier CSS est très simple:03 | frontière : 0px solide # 888 - |
04 | frontière : s`effondrer - |
08 | Border-Collpase: Collpase- |
09 | frontière : 1px solide # 888 - |
11 | rembourrage droit : 5px - |
14 | Couleur de l`arrière plan : # F1f3f5 - |
17 | Border-Collpase: Collpase- |
18 | frontière : 1px solide # 888 - |
19 | Couleur de l`arrière plan : # E9ecef - |
22 | Couleur de l`arrière plan : # c22 - |
23 | pondération de la police : audacieux - |
Le code complet utilisant le CSS est le suivant: 01 | "-// w3c // dtd xhtml 1.0 transition // fr" "DTD / XHTML1-Transitionnel.dtd" >
|
04 | # "style / style.CSS" rel = "feuille de style" Type = "Texte / CSS" /> |
08 | une fonction showcalendar () { |
09 | // obtenir des informations de jour clé. |
dix | // Nous avons besoin du premier et du dernier jour du mois et de la journée réelle |
11 | $ aujourd`hui Englisons avoir un rendez-vous ()- |
12 | $ premier jour Englisons avoir un rendez-vous ( mktime (0,0,0, $ aujourd`hui [ `lun` ],1, $ aujourd`hui [ `an` ])))- |
13 | $ latement Englisons avoir un rendez-vous ( mktime (0,0,0, $ aujourd`hui [ `lun` ] +1,0, $ aujourd`hui [ `an` ])))- |
15 | // Créer une table avec les informations d`en-tête nécessaires |
17 | écho " |
". $ aujourd`hui [ `mois` ]. " - " . $ aujourd`hui [ `an` ]. " |
---|
"-
"-
19 | écho " | Moche | Toupette | Nous | E |
"-
22 | // Affiche la première ligne de calendrier avec un positionnement correct |
"-
24 | pour ( $ i = 1- $ i < $ premier jour [ "samis" ]- $ i ++) { |
"-
28 | pour ( $ i Englisons $ premier jour [ "samis" ]- $ i <= 7- $ i ++) { |
30 | si ( $ actday == $ aujourd`hui [ "Mdaille" ]) { |
31 | $ classe Englisons `Classe ="actday"" - |
"-
"-
39 | // Obtenez combien de semaines complètes sont dans le mois réel |
40 | $ Fullweeks Englisons étage ((( $ latement [ "Mdaille" ]- $ actday )/7)- |
41 | pour ( $ i = 0- $ i < $ Fullweeks - $ i ++) { |
"-
43 | pour ( $ j = 0- $ j <7- $ j ++) { |
45 | si ( $ actday == $ aujourd`hui [ "Mdaille" ]) { |
46 | $ classe Englisons `Classe ="actday"" - |
"-
"-
55 | // affiche maintenant le reste du mois |
56 | si ( $ actday < $ latement [ "Mdaille" ]) { |
"-
58 | pour ( $ i = 0- $ i <7- $ i ++) { |
60 | si ( $ actday == $ aujourd`hui [ "Mdaille" ]) { |
61 | $ classe Englisons `Classe ="actday"" - |
66 | si ( $ actday $ latement [ "Mdaille" ]) {
|
"-
"-
"-
75 | écho " |
"-