> -----Original Message-----
> From: Joffrey van Wageningen [mailto:[EMAIL PROTECTED]]
> Sent: 15 February 2002 09:00
>
> i would try:
> 
> for($i=01;$i<=50;$i++) {
>     if(!empty($content) && $row[$content] == $states[$i])
>         $selected = " selected";
>     elseif($dstate == $states[$i])
>         $selected = " selected";
>     else
>         $selected = "";
>     echo "<option
> value=\"".$states[$i]."\"".$selected.">".$nstates[$i]."</option>";
> }

Well, all the boolean operators use lazy evaluation, so you can safely collapse your 
tests into a single one.  Also, using the ?: operator, you can turn the whole thing 
into a single echo statement:

for($i=01;$i<=50;$i++):
    echo "<option value=\"${states[$i]}\"
         .((!empty($content) && $row[$content] == $states[$i]) || $dstate == 
$states[$i]
           ? " selected" : "")
         .">${nstates[$i]}</option>";
endfor;

Mind you, I wouldn't particularly claim this to be particularly readable, but it's 
about as compact as you can get!

Cheers!

Mike

---------------------------------------------------------------------
Mike Ford,  Electronic Information Services Adviser,
Learning Support Services, Learning & Information Services,
JG125, James Graham Building, Leeds Metropolitan University,
Beckett Park, LEEDS,  LS6 3QS,  United Kingdom
Email: [EMAIL PROTECTED]
Tel: +44 113 283 2600 extn 4730      Fax:  +44 113 283 3211 

-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to