Si la déclaration avec la date crée en PHP intelligent
Oct 08 2020
Comment puis-je créer une validation dans smarty php, permettant à la valeur d'apparaître si elle est dans les 30 jours suivant la date spécifiée?
Dans le tableau:
Array (4)
0 => Array (13)
id => 6496
invoicenum => 6496
datecreated => "08/09/2020"
normalisedDateCreated => "2020-09-08"
Je ne sais pas quel serait le champ idéal pour cela, mais nous pouvons utiliser datecreatedou normalisedDateCreated.
Cela ressemblerait à quelque chose comme ceci:
{if $invoice.datecreated ... } if it is more than 30 days from the current date it should display NO
YES
{else}
NO
{/if}
Réponses
1 DarkKnight Oct 08 2020 at 20:57
Vous pouvez obtenir la date actuelle en utilisant $smarty.now, puis en soustraire les jours 30.
{if "$smarty.now -30 Days"|date_format:'%Y-%m-%d' < $invoice.normalisedDateCreated}
YES
{else}
NO
{/if}
Mais cela serait simplifié si vous pouviez simplement passer une autre variable de php qui est 30 jours avant la date actuelle.
Une autre solution proposée par @zecaluis
{if strtotime($invoice.normalisedDateCreated) > strtotime('-30 days')}