Y a-t-il une syntaxe "courte" pour créer une structure dans ColdFusion? J'aimerais remplacer ce code verbeux: avec quelque chose de plus comme un objet JavaScript: p> <cfscript>
stcML = GetPrompts({ Template: "Label", Language: "en" });
</cfscript>
5 Réponses :
Dans ColdFusion 8 et plus, vous pouvez créer une structure comme celle-ci:
ref={template="label", language="en"}
KIP, en CF8, vous pouvez utiliser cette syntaxe, comme Sam dit, mais vous ne pouvez pas l'utiliser dans des arguments pour fonctionner. Dans CF9, vous pouvez utiliser la notation de structure sténographique dans des arguments vers des fonctions; Ainsi, votre exemple ci-dessus fonctionnerait (avec = au lieu de: si)
Coldfusion 8 (et UP) a une notation littérale structurée: Cependant, il y a quelques cordes attachées: p>
Donc, fondamentalement, vous ne pouvez utiliser que cette syntaxe courte pour créer une structure à 1 dimension attribuée à une variable. Mais vous ne pouvez pas créer un à passer à une fonction de la volée comme je le voulais. Je suppose que c'est plus comme quelques chains i> attachés ...
On dirait que cela sera corrigé dans cf9 cependant!
Ouais, "chaînes" peut être plus précise. Je déposerais des littéraux de structure CF8 sous "Un jour de retard et un dollar court". Je ne sais pas pourquoi ils ont roulé cela - sous la forme actuelle, cela n'a pas beaucoup de sens.
Dans Coldfusion 9, la structure implicite et la notation de la matrice sont fixes. Occasion fonctionne et vous pouvez les créer "à la volée" comme fonction de fonction ou de balise: Dofoo ({foo = "bar"}) ou
Il convient également de noter qu'aujourd'hui (cf 10 peut-être?) Ils ont ajouté une prise en charge plus évidente : code> afin que vous n'ayez pas à utiliser l'opérateur d'affectation (
= code >). Donc, oui, vous pouvez maintenant (à la fois en CFML et CFScript), utilisez exactement ce que vous espérez.
à Railo 3 et au-dessus, vous créez comme ceci: p>
Aall ceux qui ont été possibles depuis Railo 1.
Vous pouvez utiliser CFJSON . Ajoutez le composant à une portée à laquelle vous utilisez (par exemple la portée de la demande): et appelez-le comme: p>
Si vos tentatives de simplification de la syntaxe de struct dans CF8 s'exécutent dans des défaillances de nidification et / ou d'inline, vous pouvez utiliser cette fonction de manière trompeuse simple: Vous pouvez ensuite utiliser cette syntaxe: p>
J'ai nommé la mine 'Array ()' Cuz C'est comme ça que cela fonctionne dans PHP;)