Like TopDogger said, switch is a bit more readable if you're going to branch code more than 3 ways depending on a value.
I would recommend you try using a "factory method" though if you have many different processes.
This is a bit of code that acts as a switch statement but does not get bulkier when you add more "switches".
[php]
/**
* Factory method example
*/
function factoryChoice($choice, $choices, $params = false) {
if ( in_array($choice, $choices) ) {
call_user_func($choice, $params);
} else {
echo 'Attempt to run arbitrary code!';
}
}
/**
* Example usage
*/
$choice = $_GET['choice'];
$choices = array('add', 'edit', 'delete');
$params = array($_GET['param1'], $_GET['param2'],$_GET['param3']);
factoryChoice($choice, $choices, $params);
[/php]
What the factory method essensially does is take in a choice String, then matches it with predetermined choices Array. If the choice is allowed, it calls a functions of the same name as the choice.
What this does effectively is prevent you from hardcoding your switch statements, but instead allow a dynamic choices Array.
The dynamic choices Array can be fed from hardcoded values, like in the example, or read from a db etc.
You can even go further and set different access levels on your choices quite easily.
This would be much harder with hard coded switch or else/if statement.
Hope this still pertains to the topic.