Re: Re[2]: Need a more elegant way of bitwise ORing values

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

 



On 6/13/07, Richard Davey <rich@xxxxxxxxxxxxx> wrote:
Hi Zoltán,

Wednesday, June 13, 2007, 2:21:18 PM, you wrote:

> 2007. 06. 13, szerda keltezéssel 14.13-kor Richard Davey ezt írta:
>> Hi all,
>>
>> Can anyone think of a more elegant way of achieving the following?
>>
>> <?php
>> $flags = array();
>>
>> if ($allow_fraction)
>> {
>>     $flags[] = FILTER_FLAG_ALLOW_FRACTION;
>> }
>>
>> if ($allow_thousand)
>> {
>>     $flags[] = FILTER_FLAG_ALLOW_THOUSAND;
>> }
>>
>> if ($allow_scientific)
>> {
>>     $flags[] = FILTER_FLAG_ALLOW_SCIENTIFIC;
>> }
>>
>> if (count($flags) > 0)
>> {

> $tmp = FALSE;
> foreach ($flags as $flag) {
>         $tmp = $tmp | $flag;
> }
> $filter['flags'] = $tmp;

Nice one, thank you. Same amount of code but avoids the eval() which
is all I wanted.

Cheers,

Rich
Nice one, but you could also do it like this:

<?php
$filter['flags'] = FALSE;

if ($allow_fraction)
{
  $filter['flags'] = $filter['flags'] | FILTER_FLAG_ALLOW_FRACTION;
}

if ($allow_thousand)
{
  $filter['flags'] = $filter['flags'] | FILTER_FLAG_ALLOW_THOUSAND;
}

if ($allow_scientific)
{
  $filter['flags'] = $filter['flags'] | FILTER_FLAG_ALLOW_SCIENTIFIC;
}

?>

Little bit simpler huh?

Tijnema

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



[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