KonstruiertWenn Ihr Programm nicht das Gleiche, egal wie sie genannt wurde, wäre es nicht sehr nützlich. Eine echte Anwendung reagiert auf unterschiedliche Situationen, indem Sie verschiedene Codes, die das Wesen der Flusskontrolle ist. In diesem Artikel erfahren Sie, wie Sie mit bedingten und Loop-Logik, um eine effiziente Flusskontrolle für Ihre Anwendung zu bauen. Außerdem erfahren Sie, wie Sie die Benutzer zu einer anderen Vorlage umzuleiten, und wie Sie Code aus externen Vorlagen enthalten. Wenn ein Konstrukt besteht aus einer Bedingung und einer abhängigen Anweisung. ColdFusion wertet die Bedingung, um festzustellen, ob es richtig oder falsch ist. Wenn die Bedingung erfüllt ist, führt ColdFusion Die abhängige Anweisung. Nehmen wir zum Beispiel den folgenden Code ein:
In den vorangegangenen Wenn konstruieren, um zu sehen, ColdFusion testet, ob myVar größer ist als myOtherVar. Falls das Testergebnis ist True, Ausgänge ColdFusion der Wert myVar, wenn das Testergebnis False ist, wird ColdFusion nichts tun. Sie können ColdFusion alternativen Code auszuführen, wenn die Bedingung False Tests, wie folgt:
Wir haben die ursprünglichen verlängert werden, wenn eine CFELSE Tag gehören zu konstruieren. Nun, wenn myVar ist nicht größer als myOtherVar, ColdFusion Ausgänge myOtherVar. CFIF Sie können sogar noch weiter erweitern, indem zusätzliche Bedingungen in CFELSEIF, wie folgt:
Nun, wenn myVar ist gleich myOtherVar, fügt ColdFusion die beiden zusammen und gibt das Ergebnis. Beachten Sie, dass die CFELSE Anweisung führt jetzt nur noch, wenn die beiden CFIF und CFELSEIF Bedingungen falsch sind. Sie können beliebig viele CFELSEIF Bedingungen, wie Sie einen Tag CFIF wollen, aber wenn Sie mehr als zwei oder drei auf der Basis verschiedener Ergebnisse aus der gleichen Voraussetzung testen, sollten Sie überlegen, ein Switch anstatt zu konstruieren. Ein Switch konstruieren wertet einen einzigen Ausdruck gegen mehrere Testwerte und führt dann den Code-Block mit dem Test-Wert, entspricht. Betrachten Sie die folgende Code-Snippet verbunden sind:
Dieser Ausschnitt bewertet myVar dreimal, überprüfen Sie nach jeder myVar um festzustellen, ob ein bestimmter Wert unterschritten wird. Dieser Code ist besser, mit einem CFSWITCH Block geschrieben:
Beide Auszüge dasselbe tun, aber die CFSWITCH Konstrukt ist effizienter, weil es wertet myVar einmal statt dreimal. ColdFusion führt CFSWITCH Aussagen effizienter als es CFIF Aussagen, weil CFIF jede Bedingung, bis er sieht ein, dass das stimmt, während CFSWITCH wählt einfach die CFCASE Block mit dem passenden Wert ergibt. CFCASE Werte konstant sein muß, mit anderen Worten, ist die folgende Konstruktion unzulässig:
Dieser Code wäre ein Fehler, da Variablen und Ausdrücke sind nicht an Wert CFCASE Attribut zulässig zu werfen. In dem folgenden Code wird CFDEFAULTCASE des switch-Konstrukts ist äquivalent zu CFELSE, wie das folgende Beispiel zeigt:
Wenn keiner der CFCASE Werte der Ausdruck in CFSWITCH entsprechen, führt die ColdFusion CFDEFAULTCASE blockieren. Auch mit den Vorteilen von CFSWITCH vorgesehen, manchmal müssen Sie noch CFIF Logik. Nehmen wir zum Beispiel den folgenden Code-Block:
Dieser Code kann nicht konvertiert werden, weil diese CFSWITCH CFIF Konstrukt enthält mehrere Prüfungen statt eines einzigen Test mit einem einzigen Ausdruck. CFSWITCH nutzt seine einzigen Ausdruck als "Nachschlag-Schlüssel", bis die passenden CFCASE zur Ausführung zu finden. Die einfachste Form von Schleifen Schleifen von einem bestimmten Ausgangspunkt zu einem bestimmten Endpunkt, z. B. zwischen eins und zehn. Diese Art der Schleife ist eine so genannte Indexdatei Schleife und ist im Code angezeigt. Dies ist der Code vor der Schleife. Alles zwischen Dies ist der Code vor der Schleife. Ein Index-Schleife ist geeignet, wenn Sie die Anzahl der Schleifen im Voraus wissen. Sie können aber auch Schleife eine unbestimmte Anzahl von Zeiten, während eine bestimmte Bedingung erfüllt ist, wie in den gezeigten Code ein.
RandRange (1,10) liefert eine Zufallszahl zwischen 1 und 10. Der Code bleibt Schleife während Bloop TRUE ist, und nach randRange () liefert 10, setzen wir Bloop als FALSCH. Wenn die Schleife versucht, wieder auszuführen, die Bedingung FALSE Tests und die Ausführung stoppt vor dem Schleifen ausführt. Cfloop können auch Schleife über eine Abfrage, wie in den gezeigten Code ein. Beachten Sie, dass, wenn man looping über Fragen, die Sie nicht Surround die Abfrage Objektname mit einer Raute-Zeichen.
Die cfloop in der Schleife über jede Zeile, die in der GetEmployees Query-Objekt-und Ausgänge Firmennamen in der Abfrage. Diese Art der Schleife ist ähnlich wie bei einem CFOUTPUT Anweisung, nur dass cfloop innerhalb eines anderen CFOUTPUT werden (etwas, das man nicht mit CFOUTPUT allein tun können) verschachtelt werden kann. Ein Artikel eingereicht von John Fox Disclaimer:Unsere Website ist nicht verantwortlich für den Inhalt dieses Artikels. Webarticles ist eine kostenlose Informationsquelle. Wichtig: Dieser Artikel "Konstrukte" wurde durch ein automatisches Software übersetzt. Wir fühlen uns leid für alle Rechtschreibfehler, die möglicherweise aufgetreten sind. Vielen Dank für Ihr Verständnis.
|
|||||
| Online: 341 users browsing the articles directory |
|
|