Hello- Thank you for contacting the SBC Internet Services Policy department.
The use of SBC Internet accounts to attempt to gain unauthorized access to a host, server or network is prohibited by our Acceptable Use Policy which may be found at the following URL: http://sbc.yahoo.com/terms/ I will investigate your complaint and take appropriate action. On behalf of SBC Internet, I apologize for any inconvenience caused by our customer. Please do not hesitate to write again if you have any questions or if you wish to report other instances of abuse by SBC Internet customers. Thank you, The SBCIS Policy department Original Message Follows: ------------------------- ID: 25667 User updated by: zeug at delirium dot ch Reported By: zeug at delirium dot ch Status: Open Bug Type: Documentation problem Operating System: * PHP Version: Irrelevant New Comment: Legalize it :-) After all, with <?php switch ($var): ?> <?php case 1: ?> there's also a newline finishing the switch-clause that's residing outside the PHP-block. It should be clear, that <?php switch ($var): ?> HTML blah blah <?php case 1: ?> is illegal. But I guess I grab the point: An empty line is considered an empty line of HTML rather than an empty line of PHP. So the parser strips whitespace AFTER a <?php ?> block, but doesn't ignore empty lines. This behaviour makes sense in most cases but maybe this switch-whitespace-case one. Never mind, it smells like tweaking the parser for no big issue, so adding a phrase to the docs will do I guess. Thanks for the fast replies, that's really cool! Previous Comments: ------------------------------------------------------------------------ [2003-09-26 05:24:16] tony2001 at phpclub dot net as Wez already said, ---- <?php switch ($return) ?> <?php case 1: ?> ---- and ---- <?php switch ($return) case 1: ?> ---- are not the same things. first is equal to: <?php switch ($return): echo "\n"; case 1: ?> and this is invalid syntax. ------------------------------------------------------------------------ [2003-09-26 05:18:56] zeug at delirium dot ch Now, that's a matter of taste. I code 99% as classes in external files. So only very little PHP remains in the actual page file, mainly to arrange the HTML output. Picture this: <html> <?php // here go a couple of PHP code using external // classfiles that set a $return value ?> * SOME HTML CODE * <?php select ($return) ?> <?php case 1: ?> * A BUNCH OF HTML CODE * <?php break ?> <?php case 2: ?> * OTHER HTML CODE * <?php break ?> ... <? endswitch ?> * FINAL HTML CODE * </html> I currently omit the empty line between the switch and the first case, yet why is one Newline after the swtich okay, but two Newlines fail parsing? ------------------------------------------------------------------------ [2003-09-26 05:01:18] tony2001 at phpclub dot net just don't open/close php-tags on every line of your script. <? switch () { //as many empty lines as you want. case 1: break; } ?> ------------------------------------------------------------------------ [2003-09-26 04:52:07] zeug at delirium dot ch Wow, that was fast :-) Why shouldn't you be allowed to have whitespace between the opening switch and the first case clause when it's okay to have whitespace between case clauses and the final case/default clause and endswitch - unless of cause eliminating this exception means messing up the parser code? ------------------------------------------------------------------------ [2003-09-26 04:45:09] [EMAIL PROTECTED] Actually this is not bug. You can't have anything between switch()..case.. ever. It's not valid. This is same as what you tried: <?php $var = 1; switch (1) { echo " "; case 1: echo $var; } ?> ------------------------------------------------------------------------ The remainder of the comments for this report are too long. To view the rest of the comments, please view the bug report online at http://bugs.php.net/25667 -- Edit this bug report at http://bugs.php.net/?id=25667&edit=1