note 75936 added to control-structures.break

From: Date: Fri, 22 Jun 2007 11:10:16 +0000
Subject: note 75936 added to control-structures.break
Groups: php.notes 
Request: Send a blank email to php-notes+get-127885@lists.php.net to get a copy of this message
To add to the responses given to "vlad at vlad dot neosurge dot net" - I'd like to note the lack of automatic breaking in 'default' can be a very good thing. Consider this useful snippet: <?php switch((string) $_REQUEST['mode']) { default: $_REQUEST['mode'] = "search"; // fall through... case 'search' : case 'list' : case 'add' : case 'edit' : require(dirname(__FILE__)."/incs/".$_REQUEST['mode'].".php"); break; } ?> I personally find that far easier to look at than, for example: <?php $valid_modes = array('search','list','add','edit'); if (in_array($_REQUEST['mode'],$valid_modes)) { require(dirname(__FILE__)."/incs/".$_REQUEST['mode'].".php"); } else { require(dirname(__FILE__)."/incs/search.php"); } ?> ...and it even has the added benefit that the switch() variant only has one require() statement, which makes for easier maintenance, e.g. if the directory changes, or what-have-you. (Consider the above pseudocode, please, it's not tested - it's code illustrating a point only.) ---- Server IP: 212.124.37.9 Probable Submitter: 84.46.117.118 ---- Manual Page -- http://www.php.net/manual/en/control-structures.break.php Edit -- https://master.php.net/note/edit/75936 Del: integrated -- https://master.php.net/note/delete/75936/integrated Del: useless -- https://master.php.net/note/delete/75936/useless Del: bad code -- https://master.php.net/note/delete/75936/bad+code Del: spam -- https://master.php.net/note/delete/75936/spam Del: non-english -- https://master.php.net/note/delete/75936/non-english Del: in docs -- https://master.php.net/note/delete/75936/in+docs Del: other reasons-- https://master.php.net/note/delete/75936 Reject -- https://master.php.net/note/reject/75936 Search -- https://master.php.net/manage/user-notes.php

« previous php.notes (#127885) next »