Re: how to say "inverse your value" (to a boolean)?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, Aug 11, 2009 at 10:09 AM, tedd <tedd.sperling@xxxxxxxxx> wrote:

> At 8:46 AM -0400 8/11/09, tedd wrote:
>
>> At 4:16 PM -0600 8/10/09, John Butler wrote:
>>
>>> quick Q:
>>> I have this inside a foreach{}  that I want to alternate between on and
>>> off so I can alternate the background-color of my <tr>'s.
>>>
>>> $tableRowBGcolorBoolCounter != $tableRowBGcolorBoolCounter; //-boolean on
>>> and off
>>>
>>> I am looking thru' docs and books, but can't remember (nor find now) in
>>> PHP how to say "inverse your value" (to a boolean).
>>> ?
>>>
>>> TIA! -G
>>>
>>
>> John:
>>
>> Here's my solution:
>>
>> http://webbytedd.com/b/color-rows/
>>
>> Cheers,
>>
>> tedd
>>
>
> However, my solution (after reading others) is for an alternating row color
> (a boolean operation).
>
> The problem was NOT making every third row a different color or making
> every row a different color. Those problems would require different
> solutions.
>
> There is nothing wrong with embedding php within html, which is really a
> misnomer because it's the php interpreter that's sending the resultant html
> to the browser. It is not sending php snip-its for the browser to handle.
> So, embedding code such as:
>
> <tr class="row<?php echo($i++ & 1);?>">
>
> Is a valid statement that works. It would be nice if you initialize the $i
> value, but it will work either way.
>
> My solution, provided via the above link, is a valid solution.
>
>
> Cheers,
>
> tedd
>
> --
> -------
> http://sperling.com  http://ancientstones.com  http://earthstones.com
>
> --
> PHP General Mailing List (http://www.php.net/)
> To unsubscribe, visit: http://www.php.net/unsub.php
>
>

A change request just came in - the interaction designer wants every
third line to have a grey background, instead of every second line.

# before was $styles = array( 'even', 'odd' );
# after new requirements it is...
$styles = array( 'white', 'white', 'gray' );
foreach($items as $item)
{
printf( '<li class="%s">%s</li>', current( $styles ), $item );

next( $styles ) or  reset( $styles );
}

The simplest solution is always the best choice.
This provides maintainability and flexibility to changes ( that we don't
know yet )

-- 
Martin Scotta

[Index of Archives]     [PHP Home]     [Apache Users]     [PHP on Windows]     [Kernel Newbies]     [PHP Install]     [PHP Classes]     [Pear]     [Postgresql]     [Postgresql PHP]     [PHP on Windows]     [PHP Database Programming]     [PHP SOAP]

  Powered by Linux