Re: [Templates] Pass through perl?
[prev]
[thread]
[next]
[Date index for 2004/07/21]
Chris Huegle wrote:
> [% IF 'bar' >= 'foo' %] translates to
> if ('bar' >= 'foo') { which returns true, since 1 == 1.
I think you'll find it returns true because 0 == 0. Perl attempts to
convert the strings to numbers and fails gracefully, returning 0 if they
don't look like numbers.
In general, if you try and compare strings with a numerical comparison
operator, then you will get unpredictable results in both TT and Perl (and
most other programming languages).
So don't do that. :-)
> In PERL, you quote it: $FOO->{'gold-1'}. You might notice in the
> examples I used below, it is quoted and 'works' in Perl. In TT,
> FOO.'gold-1' is also invalid and there doesn't seem to be a way to quote
> it.
foo.${'gold-1'}
> You should try to stay nice when there's a chance you've misunderstood
> something. You'll have more friends that way.
Very good advice.
A
_______________________________________________
templates mailing list
templates@xxxxxxxxxxxxxxxx.xxx
http://lists.template-toolkit.org/mailman/listinfo/templates