Re: Looping from A to Z

From: Date: Mon, 20 Feb 2006 02:39:08 +0000
Subject: Re: Looping from A to Z
References: 1 2  Groups: php.general 
Request: Send a blank email to php-general+get-230728@lists.php.net to get a copy of this message
>>Good afternoon. I'm having trouble getting PHP to loop from A >>through Z. Here is what I tried, coming from a C background: >> >>for ($l = "A"; $l <= "Z"; $l++) >> echo $l; >> >>// Returns A, B, C, ..., X, Y, Z, AA, AB, AC, AD, AE, ... YX, YY, YZ. (26 * 26 results!) >> >>Interestingly, if I make it a "less than" operation instead of "less than or equal to", it works correctly (except for the Z): >> >>for ($l = "A"; $l < "Z"; $l++) >> echo $l; >> >>// Returns A, B, C, ..., W, X, Y (25 results) >> >>Anyone know why PHP would do that? >> >>Richard > From the PHP docs: PHP follows Perl's convention when dealing with arithmetic operations on character variables and not C's. For example, in Perl 'Z'+1 turns into 'AA', while in C 'Z'+1 turns into '[' ( ord('Z') == 90, ord('[') == 91 ). Note that character variables can be incremented but not decremented. -Jim

« previous php.general (#230728) next »