[nflug] PHP character question

Robert Meyer meyer_rm at yahoo.com
Fri Apr 18 13:50:41 EDT 2008


Well, you don't see it in the output but I can guarantee that you're filling your logs with errors...  I ran it without the quotes around the characters and it really sprayed out the errors.  Note that I ran in the PHP command line, not on a web server.  I modified the code to do the right thing.  It doesn't make a lot of sense but here is the code that I worked out:

<?PHP
for ($i = 'A'; $i < 'Z'; $i++)
  {
   if ($i === 'N') { echo "\n\n<br>\n\n"; }

   echo $i;

   if ($i <> 'M' || $i <> 'Z') { echo " | "; }
  }
echo "Z";
?>


Hope that helps...

Cheers!

Bob
 
--
"When once you have tasted flight, you will forever walk the earth with your eyes turned skyward, for there you have been, and there you will always long to return."
   --Leonardo da Vinci

----- Original Message ----
From: Rob Dege <livemotion at gmail.com>
To: nflug at nflug.org
Sent: Friday, April 18, 2008 12:57:12 PM
Subject: Re: [nflug] PHP character question


Using quotes on the characters didn't appear to have an effect on either the loop or the if condition, so I left it omitted.  The 2nd piece of code is adding a separator in between every letter except for M and Z.  My desired output is:

A | B | C | D | E | F | G | H | I | J | K | L | M  
N | O | P | Q | R | S | T | U | V | W | X | Y | Z


Here is my overall code:


for ($i=A; $i<Z; $i++)
  {
   if ($i === N) { echo "\n\n<br>\n\n"; }

   echo $i;

   if ($i <> M || $i <> Z) { echo " | "; }
  }



On Fri, Apr 18, 2008 at 12:40 PM, Robert Meyer <meyer_rm at yahoo.com> wrote:
Well, a couple of observations...  You never quote any of the characters that you're assigning.  I'm not sure if it's an omission or what.

Second, in the chunk of code with the ||, the first piece of code with give a a '|' for *every* character.  For the second, you will get two for every character that is not M or Z and one for each M or Z.

Maybe a cut and paste of the whole code fragment might help figure out what's going on.

Cheers!

Bob
 
--
"When once you have tasted flight, you will forever walk the earth with your eyes turned skyward, for there you have been, and there you will always long to return."
   --Leonardo da Vinci


----- Original Message ----
From: Rob Dege <livemotion at gmail.com>
To: nflug at nflug.org
Sent: Friday, April 18, 2008 12:22:35 PM
Subject: [nflug] PHP character question

Hello to all,

I am trying to create a simple for loop, but instead of incrementing numbers, I want to increment characters.  I am able to get the code to work, up until the end, when it comes time to output the last char.

for ($i = A; $i < Z; $i++)
  {
    echo "$i <br>";
   }

In this simple example, the output would be to echo the characters A - Y, omitting Z; which is expected.  If I change $i < Z to $i <= Z, one would expect to have Z included in the output.  Unfortunately, this does not happen.  Instead, it continues to loop past Z until it outputs YZ (A - Z, AA - AZ, BA - BZ, ..... YA - YZ).  This would imply that it's matching against ZA instead of just Z.  I know there are alternate ways around this, but now I'm really curious about the looping behavior here.  Any insight is appreciated.


I also have a related question with an if condition, if you want further head scratching.

if ($i != M || $i != Z) { echo " | "; }

With this statement, whenever $i has the value of either M or Z it should execute the condition, but it doesn't.  However, if I separate the if condition into two separate conditions statements, it works as intended.

if ($i != M) { echo " | "; }

if ($i != Z) { echo " | "; }

I'm not sure why the || would cause a problem, but for some reason it does.

-- 
-Rob

Ben Franklin Quote: "They that can give up essential liberty to obtain a little temporary safety deserve neither liberty nor safety."






      Be a better friend, newshound, and know-it-all with Yahoo! Mobile.  Try it now.


_______________________________________________
nflug mailing list
nflug at nflug.org
http://www.nflug.org/mailman/listinfo/nflug





-- 
-Rob

Ben Franklin Quote: "They that can give up essential liberty to obtain a little temporary safety deserve neither liberty nor safety."





      ____________________________________________________________________________________
Be a better friend, newshound, and 
know-it-all with Yahoo! Mobile.  Try it now.  http://mobile.yahoo.com/;_ylt=Ahu06i62sR8HDtDypao8Wcj9tAcJ
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://www.nflug.org/pipermail/nflug/attachments/20080418/07aad2ef/attachment.html


More information about the nflug mailing list