Switch ViewHelper <f:switch>

Switch ViewHelper which can be used to render content depending on a value or expression. Implements what a basic PHP switch() does.

An optional default case can be specified which is rendered if none of the case conditions matches.

Using this ViewHelper can be a sign of weak architecture. If you end up using it extensively you might want to consider restructuring your controllers/actions and/or use partials and sections. E.g. the above example could be achieved with <f:render partial="title.{person.gender}" /> and the partials "title.male.html", "title.female.html", ... Depending on the scenario this can be easier to extend and possibly contains less duplication.

Examples

Simple Switch statement

<f:switch expression="{person.gender}">
    <f:case value="male">Mr.</f:case>
    <f:case value="female">Mrs.</f:case>
    <f:defaultCase>Mr. / Mrs.</f:defaultCase>
</f:switch>
Copied!

Output:

"Mr.", "Mrs." or "Mr. / Mrs." (depending on the value of {person.gender})
Copied!

Source code

Go to the source code of this ViewHelper: SwitchViewHelper.php (GitHub).

Arguments

The following arguments are available for the switch ViewHelper:

expression

expression
Type
mixed
Required
1
Expression to switch