Cercare una funzione come this in ColdFusion, consentendomi di mostrare le date come "10 minuti fa" o "2 giorni fa" o "un mese fa".Date relative in ColdFusion
14
A
risposta
10
Anche se non è fondamentalmente diverso rispetto al UDF, mi piace this guy's approach. Non altamente testato, ma si potrebbe anche fare qualcosa di simile:
Modifica Non hai parlato di una versione, così ho assunto CF8
<cffunction name="relativeDate" returnType="string" access="public" output="false">
<cfargument name="theDate" type="date">
<cfset var x = "" />
<cfset var diff = "" />
<cfset var result = "unknown" />
<cfset var dateNow = now() />
<cfset var codes = [ "yyyy", "m", "ww", "d", "h", "n", "s" ] />
<cfset var names = [ "year", "month", "week", "day", "hour", "minute", "second" ] />
<cfif dateCompare(arguments.theDate, now()) gt 0>
<!--- replace with other code to handle future dates ....--->
<cfthrow message="Future date handling not implemented">
</cfif>
<!--- check each date period ...--->
<cfloop from="1" to="#arrayLen(codes)#" index="x">
<cfset diff = abs(dateDiff(codes[x], arguments.theDate, dateNow)) />
<!--- this is the greatest date period --->
<cfif diff gt 0 >
<cfif diff gt 1>
<cfset result = "about "& diff &" "& names[x] &"s ago" />
<cfelseif names[x] eq "hour">
<cfset result = "about an "& names[x] &" ago" />
<cfelse>
<cfset result = "about a "& names[x] &" ago" />
</cfif>
<cfbreak>
</cfif>
</cfloop>
<cfreturn result />
</cffunction>
5
Si può provare questo UDF da cflib.org: http://cflib.org/udf/ago
Problemi correlati
- 1. Formato date relative
- 2. Calcolo delle date relative utilizzando asp.net mvc
- 3. Come posso creare date relative/approssimative in Perl?
- 4. (ColdFusion) Confronta due date, risultato uso per determinare quali mostra
- 5. Come convertire date relative come "Oggi" e "Ieri" in un oggetto data XQuery?
- 6. Test HTTPS in locale con Coldfusion
- 7. Autenticazione NTLM in ColdFusion
- 8. Quando dovrei usare # in ColdFusion?
- 9. Protezione dall'iniezione SQL in ColdFusion
- 10. Aggiorna DNS in coldfusion 9
- 11. Alcune domande relative allo schema json personalizzato
- 12. Sphinx e relative importazioni in Python 3. *
- 13. domande relative a funzioni elaborate in Scala
- 14. Rimuovere le date contenute in altre date?
- 15. Crittografia in Coldfusion e decrittografia in PHP
- 16. come confrontare due date date date jquery
- 17. Servire immagini relative usando assetic
- 18. posizioni ticks matplotlib relative all'asse
- 19. ColdFusion: qualcuno usa WDDX?
- 20. Crittografia SQL e ColdFusion
- 21. Due mappature relative alle enumerazioni?
- 22. ColdFusion EntityLoad Filter
- 23. Compatibilità ColdFusion/PHP
- 24. Variabili sessione ColdFusion
- 25. ColdFusion Bundler & Minification
- 26. Coldfusion Tumblr oAuth Frustrazione
- 27. ColdFusion: QUERY to JSON
- 28. Coldfusion 9 serializeJSON()
- 29. coldfusion strano spazio extra
- 30. RectangleGeometry con dimensioni relative ... come?
perché è necessario dichiarare il 'var x'? –
È una variabile di ciclo locale della funzione, quindi deve essere var/local scope. – Leigh