ساختار Switch/Case يک عبارت را در برابر چندين شرط، ارزيابي مي کند و سپس کد مربوطه را اجرا مي کند.
مثلا، تکه کد زير را در نظر بگيريد :
<cfif myVar EQ 1>
One
<cfelseif myVar EQ 2>
Two
<cfelseif myVar EQ 3>
Three
</cfif>
تکه کد بالا مقدار myVar را سه بار ارزيابي مي کند و هر بار تست مي کند که آيا مقدار آن برابر مقدار خاصي هست يا نه. کد بالا را مي توان به صورت بهتر مي توان نوشت :
<cfswitch expression=”#myVar#”>
<cfcase value=1>
One
</cfcase>
<cfcase value=2>
Two
</cfcase>
<cfcase value=3>
Three
</cfcase>
</cfswitch>
هر دو کد يک کار واحد انجام مي دهند اما ساختار cfswitch بهينه تر مي باشد، زيرا مقدار متغير myVar به جاي سه بار، يک بار ارزيابي مي کند. کلدفيوژن عبارات cfswitch را بسيار بهينه تر از عبارات cfif اجرا مي کند ، زيرا براي اجراي cfif، هر دفعه هر مقدار هر عبارت شرطي را ارزيابي مي کند (true يا false) تا آنجا مقدار يک عبارت true شود، ولي cfswitch ابتدا مقدار عبارت را ارزيابي مي کند (يک بار) و سپس قسمت مطابق با آن را اجرا مي کند.
مقادير ذکر شده در cfcase بايد از نوع ثابت باشند و نمي توانند متغير و يا عبارت باشند. به عنوان مثال، تکه کد زير مجاز نيست :
<cfswitch expression=”#MyVar#”>
…
<cfcase value=”#1+1#”>
Two
</cfcase>
…
</cfswitch>
در کد زير cfdefaultcase برابر cfelse در ساختار cfif مي باشد.
<cfswitch expression=”#myVar#”>
<cfcase value=1>
One
</cfcase>
<cfcase value=2>
Two
</cfcase>
<cfcase value=3>
Three
</cfcase>
<cfdefaultcase>
Some Other Number
</cfdefaultcase>
</cfswitch>
کد بالا به اين معناست که اگر هيچ يک از مقادير cfcase برابر مقدار عبارت نبودند، بلوک کد مربوط به cfdefaultcase را اجرا کند.
اگر چه ساختار هاي cfswitch مزاياي زيادي دارند، اما در اغلي اوقات نمي توان از آن به جاي cfif استفاده کرد. مثلا به کد زير توجه کنيد :
<cfif MyVar GREATER THAN myOtherVar>
<cfoutput>#MyVar#</cfoutput>
<cfesleif myVar EQUAL myOtherVar>
<cfoutput>#MyVar+MyOtherVar#</cfoutput>
<cfelse>
<cfoutput>#MyOtherVar#</cfoutput>
</cfif>
اين کد را نمي توان به وسيله ساختار cfswitch نوشت. زيرا عبارات شرطي کد بالا چيزي بيشتر از يک مقايسه ي برابري ساده مي باشند.
آخرین مقالات طراحی سایت
- فایروال ها چگونه کار می کنند؟
- همه چیز در مورد PageRank گوگل
- روند زندگی یک دامنه
- معرفی انواع دامنه اینترنتی (Domain)
- مالتی مديا چیست؟
- هاست چیست ؟
- دامین چیست؟
- 10 دلیل برتر برای خرید دامنه Tel.
- Disabling the Image Toolbar in IE 6 for Your Site
- Two Common Web Design Myths
- How to Add Background Music to Your Web Page
- How to Set Up A Custom 404 File Not Found Page
- Should I Display an Email Address on My Site or Use a Contact Form?
- 6 Things to Note Before Changing Your Site Design
- What's The Difference Between Liquid, Elastic, Relative, Fluid, Flexible and Fixed Layouts?
- What Sort of Website Should I Create In Order to Earn Money?
- 10 اشتباه نابخشودنی تبلیغات اینترنتی
- چرا ظاهر یک سایت به اندازه برنامه نویسی آن با اهمیت است؟
- مزایای تجارت الکترونیک نسبت به تجارت سنتی
- Starting an Online Business Directory - A Great Way to Get Links
دانلود رایگان کتابهای طراحی سایت
- Developers Guide to Web Application Security
- HTML and XML for Beginners
- PHP 5 in Practice
- Expert SQL Server 2008 Development
- Implementing SOA Using Java EE
- Creating Cool Web Sites With HTML, XHTML, And CSS
- Foundation Joomla!
- Web Design for Developers
- Joomla! with Flash
- WordPress MU 2.8: Beginner's Guide
- The Art and Science of Web Design
- Neuro Web Design: What Makes Them Click?
- Build Your Own ASP.NET 2.0 Web Site Using C# & VB
- Visual Design for the Modern Web
- The Web Startup Success Guide
- Building Social Web Applications
- Ajax for Web Application Developers
- HTML, XHTML, and CSS, Sixth Edition
- Professional ASP.NET 2.0 AJAX
- ASP.NET AJAX in Action

