2016-03-14 4 views
0

Je travaille sur un php. Dans mon projet, lorsqu'un étudiant s'inscrit, il choisit la date de début et de fin de son cours, par exemple (2012/06/05) - (2015/06/25). Maintenant, il soumet ses frais après tous les six mois. maintenant ce que je veux faire est que lorsque l'étudiant remplit le formulaire pour soumettre ses frais, il lui suffit de sélectionner les années à partir de ces années pour lesquelles il fera le cours, c'est-à-dire 2012,2013,2014 and 2015. Comment faire ça.
Donc, quelqu'un peut me montrer s'il vous plaît quelque part là-bas.
Merci d'avance.Comment montrer les années n/b à des dates spécifiques

Répondre

1

Vous devez utiliser strtotime() pour obtenir l'année de début et de fin au fur et à obtenir toutes les années entre deux ans:

$start = date('Y', strtotime('2012/06/05')); 
$end = date('Y', strtotime('2015/06/25')); 

$years = array(); 
for ($end = $start; $end < date('Y'); $end++) { 
    $years[] = $end; 
} 

echo "<pre>"; 
echo implode(",",$years); //2012,2013,2014,2015 
2

Essayez ceci:

$begin = date('Y', strtotime('2012-06-05')); 
$end = date('Y', strtotime('2015-06-25')); 
$years = array(); 

while($begin <= $end){ 
    $years[] = $begin++; 
} 

echo "<pre>"; 
print_r($years); 

donne:

Array 
(
    [0] => 2012 
    [1] => 2013 
    [2] => 2014 
    [3] => 2015 
) 

Cette année $ est un tableau contenant toutes les années entre les deux dates entrées par l'utilisateur.

Espérons que cela aide. Paix! xD

0

Cela peut être fait très simple:

$start = new DateTime('2012/01/20'); 
$end = new DateTime('2015/01/20'); 

$years = range($start->format('Y'), $end->format('Y')); 

<select name="year"> 
<?php foreach ($years as $year): ?> 
    <option value="<?= $year; ?>"><?= $year; ?></option> 
<?php endforeach; ?> 
</select>