On Thu, 2008-02-28 at 12:39 +0000, Nathan Rixham wrote:
> Aschwin Wesselius wrote:
> > Stut wrote:
> >> Just because it works doesn't mean it's right.
> >>
> >> -Stut
> >>
> >
> >
> > What I meant was that I tested the script and it worked, so I didn't
> > spot the flaw (wich is obvious and you were right).
> >
> > No big deal.
> >
>
> should it not use curlies?
>
> $tmp = '';
> $str = 'abcdef';
> for ($i = strlen($str)-1; $i >= 0; $i--) {
> $tmp.= $str{$i};
> }
> echo $tmp;
>
>
> here's the "overkill" way to do it:
>
> $str = 'abcdef';
> $rev = implode(array_flip(array_reverse(array_flip(str_split($str)))));
> echo $rev;
>
> *sniggers*
There's always a tradeoff between speed and memory. Here's the low
memory version:
<?php
$str = '1234567';
str_reverse_in_place( $str );
echo 'Reversed: '.$str."\n";
function str_reverse_in_place( &$str )
{
$a = 0;
$z = strlen( $str ) - 1;
while( $a < $z )
{
$t = $str[$a];
$str[$a] = $str[$z];
$str[$z] = $t;
++$a;
--$z;
}
}
?>
Cheers,
Rob.
--
.------------------------------------------------------------.
| InterJinn Application Framework - http://www.interjinn.com |
:------------------------------------------------------------:
| An application and templating framework for PHP. Boasting |
| a powerful, scalable system for accessing system services |
| such as forms, properties, sessions, and caches. InterJinn |
| also provides an extremely flexible architecture for |
| creating re-usable components quickly and easily. |
`------------------------------------------------------------'
--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php