Se declaração com data criar em smart php
Oct 08 2020
Como posso criar uma validação no smarty php, permitindo que o valor apareça se for dentro de 30 dias da data especificada?
Na matriz:
Array (4)
0 => Array (13)
id => 6496
invoicenum => 6496
datecreated => "08/09/2020"
normalisedDateCreated => "2020-09-08"
Não sei qual seria o campo ideal para isso, mas podemos usar datecreatedou normalisedDateCreated.
Seria mais ou menos assim:
{if $invoice.datecreated ... } if it is more than 30 days from the current date it should display NO
YES
{else}
NO
{/if}
Respostas
1 DarkKnight Oct 08 2020 at 20:57
Você pode obter a data atual usando $smarty.nowe, em seguida, subtrair os dias 30 dessa data.
{if "$smarty.now -30 Days"|date_format:'%Y-%m-%d' < $invoice.normalisedDateCreated}
YES
{else}
NO
{/if}
Mas seria simplificado se pudesse apenas passar outra variável do php que é 30 dias antes da data atual.
Outra solução proposta por @zecaluis
{if strtotime($invoice.normalisedDateCreated) > strtotime('-30 days')}
O que significa um erro “Não é possível encontrar o símbolo” ou “Não é possível resolver o símbolo”?
Christopher Nolan uma vez se arrependeu de ter lido o 'roteiro de Pulp Fiction' de Quentin Tarantino