AdRock Posted August 5, 2010 Share Posted August 5, 2010 I have some code which i think is really inefficient especially as there will be more more conditions to be met. I was thinking about using s switch but don't know if this is possible or if it's best leaving as it is. Any ideas? if($parts[($i-1)]=="forum") { //do some code } else if($parts[($i-2)]=="forum") { //do code } else if (($parts[($i-1)]=="list-messages") && (isset($parts[($i+1)]))) { //do code } else { // do some code } Link to comment https://forums.phpfreaks.com/topic/209892-can-i-make-this-more-efficient/ Share on other sites More sharing options...
JonnoTheDev Posted August 5, 2010 Share Posted August 5, 2010 Switch / Case is far cleaner than multiple conditional statements. Link to comment https://forums.phpfreaks.com/topic/209892-can-i-make-this-more-efficient/#findComment-1095544 Share on other sites More sharing options...
AdRock Posted August 5, 2010 Author Share Posted August 5, 2010 I was thinking about switch/case but not sure what to put between the brackets of the switch Would i put switch($parts) and have nested switch i.e. switch($parts) { switch($i-1) { } switch($i-2) { } } Link to comment https://forums.phpfreaks.com/topic/209892-can-i-make-this-more-efficient/#findComment-1095554 Share on other sites More sharing options...
JonnoTheDev Posted August 5, 2010 Share Posted August 5, 2010 More along the lines of <?php function doStuff($string) { switch($string) { case "forum": return "display forum"; break; case "list-messages": return "list all messages"; break; default: return "don't know what to do"; break; } } for($x = 0; $x < count($parts); $x++) { print doStuff($parts[$x]); } ?> Link to comment https://forums.phpfreaks.com/topic/209892-can-i-make-this-more-efficient/#findComment-1095558 Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.