Y a-t-il un moyen rapide d'obtenir un coût de location décroissant en fonction du nombre de jours?
Par exemple: P>
function getcost(days){
...
return $cost;
}
echo getcost(1); // it show 100$
echo getcost(3); // it show 220$
// and so on...
5 Réponses :
function getcost(days){
$cost=0;
for($idx=1;$idx<=$days;$idx++)
{
switch($idx)
{
case 1:
$cost+=100;
break;
case 2:
$cost+=70;
break;
default:
$cost+=50;
break;
}
}
return $cost;
}
$price = $days * 50 + ($days > 1 ? 70 : 20); If you want to you can put it in a function.
En supposant que, à partir de la troisième journée, tous les jours consécutifs coûtent 50 $:
Vous pouvez essayer comme ce moyen- Démo: strong>
Si votre tarif de jour est basé sur le nombre de jours, alors vous permettant d'avoir un taux dynamique (type de voiture peut-être différent, etc.), il est préférable de disposer d'une forme de matrice transmise à la fonction. La fonction utilise ensuite cela et ajoute les jours jusqu'à ce que les taux s'épuisent et ajoute les jours restants en fonction du dernier taux ...
// Cost for each day
$costs = [100, 70, 50];
function getcost( $costs, $days){
$totalCost = 0;
foreach ( $costs as $dayCost ) {
// Add each cost
$totalCost += $dayCost;
// Decrement number of days left and exit if reached 0
if ( --$days == 0 ) {
break;
}
}
// If remaining days - add last day cost * number of days
if ($days > 0 ) {
$totalCost += ($dayCost*$days);
}
return $totalCost;
}
echo getcost($costs, 1); // it show 100$
echo getcost($costs, 3); // it show 220$
echo getcost($costs, 5); // it show 320$
Déclaration de commutation?
ou, tableau numéroté ($ Array [1 => 100, 2 => 70, 3 => 50]) - donc
Calcprice de fonction ($ jours) {#Ajouter en conséquence en fonction du nombre de jours (si cela est supérieur à 3 @ 50)} code>Alors, était-ce votre devoir?