Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.php > #12628

Re: Switch question

From Denis McMahon <denismfmcmahon@gmail.com>
Newsgroups comp.lang.php
Subject Re: Switch question
Date 2014-01-12 23:14 +0000
Organization A noiseless patient Spider
Message-ID <lav7k4$mdc$4@dont-email.me> (permalink)
References <1jvvn9b20ts0y.1vez76z3aca4b.dlg@40tude.net> <lauiq3$mdc$1@dont-email.me> <1poy7ts4hdy96$.188q6380cr9m0.dlg@40tude.net>

Show all headers | View raw


On Sun, 12 Jan 2014 12:26:01 -0500, richard wrote:

> On Sun, 12 Jan 2014 17:18:59 +0000 (UTC), Denis McMahon wrote:
> 
>> On Sun, 12 Jan 2014 11:48:48 -0500, richard wrote:
>> 
>>> The manual for PHP switch shows no examples on how to use multiple
>>> values for the same case.
>>> In liberty basic I would use the following:
>>> case 1,2,3,4 case "A","B","C"
>>> 
>>> What is the equivelant in PHP?
>>> 
>>> I use the following code to acquire a value:
>>> $value=$_GET['v'];
>>> switch ($value){
>>>   case "A";
>> 
>> This is fucked up, despite what you may believe ":" is not the same as
>> ";"
>> 
>>>   echo "Does Not Work!";
>>>   case A:
>>>   echo "Does Not Work!";
>>> }
>>> 
>>> So what is the proper way to ensure the proper case is found
>>> correctly?
>> 
>> You seem to have missed the paragraph beginning "It is important to
>> understand how the switch statement is executed in order to avoid
>> mistakes." on the manual page. This paragraph answers your question.
> 
> for once I get to say, to you, >>>> RTFM!
> : is used for constants.
> ; is used for strings.

Yes, I wasn't aware that ; could be used instead of :, however you fucked 
up when you said ": is used for constants. ; is used for strings."

Nice to see you're still on form with the fuck-ups.

> As usuaul, I find the answer to my question.
> Instead of commas, use ||.
> 
> case 1 || 2 || 3:
> case "A" || "B" || "C";
> 
> The syntax is correct!

The syntax may be valid php syntax, but I'll bet any money you like that 
the code doesn't do what you expect under all operating conditions, 
because you have fucked up yet again.

Here is a simple program which demonstrates your fuck-up:

<?php
function test($x){
  echo "testing {$x} for \"fred\", \"jim\" or \"sue\"\n";
  switch($x){
    case "fred"||"jim"||"sue":echo"     match\n";break;
    default;echo"     no match\n";break;
  }
}
$names = array("pete","fred","alan","sue","andy","jim","hank","richard");
foreach($names as $name)test($name);



-- 
Denis McMahon, denismfmcmahon@gmail.com

Back to comp.lang.php | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread


Thread

Switch question richard <noreply@example.com> - 2014-01-12 11:48 -0500
  Re: Switch question Denis McMahon <denismfmcmahon@gmail.com> - 2014-01-12 17:18 +0000
    Re: Switch question richard <noreply@example.com> - 2014-01-12 12:26 -0500
      Re: Switch question Luuk <luuk@invalid.lan> - 2014-01-12 18:44 +0100
      Re: Switch question Evan Platt <evan@theobvious.espphotography.com.invalid> - 2014-01-12 10:47 -0800
        Re: Switch question Denis McMahon <denismfmcmahon@gmail.com> - 2014-01-12 23:15 +0000
      Re: Switch question Norman Peelman <npeelman@cfl.rr.com> - 2014-01-12 16:07 -0500
        Re: Switch question Norman Peelman <npeelman@cfl.rr.com> - 2014-01-12 23:01 -0500
          Re: Switch question Norman Peelman <npeelman@cfl.rr.com> - 2014-01-12 23:10 -0500
            Re: Switch question Norman Peelman <npeelman@cfl.rr.com> - 2014-01-13 06:53 -0500
            Re: Switch question Denis McMahon <denismfmcmahon@gmail.com> - 2014-01-13 13:11 +0000
      Re: Switch question Denis McMahon <denismfmcmahon@gmail.com> - 2014-01-12 23:14 +0000
      Re: Switch question Doug Miller <doug_at_milmac_dot_com@example.com> - 2014-01-13 01:40 +0000
        Re: Switch question The Natural Philosopher <tnp@invalid.invalid> - 2014-01-13 01:54 +0000
          Re: Switch question Doug Miller <doug_at_milmac_dot_com@example.com> - 2014-01-13 03:19 +0000
    Re: Switch question Arno Welzel <usenet@arnowelzel.de> - 2014-01-13 15:34 +0100
  Re: Switch question Denis McMahon <denismfmcmahon@gmail.com> - 2014-01-12 17:22 +0000
    Re: Switch question Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2014-01-12 23:36 +0100
  Re: Switch question Luuk <luuk@invalid.lan> - 2014-01-12 18:21 +0100
  Re: Switch question "Beauregard T. Shagnasty" <a.nony.mous@example.invalid> - 2014-01-12 17:34 +0000
  Re: Switch question Arno Welzel <usenet@arnowelzel.de> - 2014-01-13 15:32 +0100

csiph-web