Re: [SMARTY] eval problem

From: Date: Sat, 11 Mar 2006 15:31:33 +0000
Subject: Re: [SMARTY] eval problem
References: 1  Groups: php.smarty.general 
Request: Send a blank email to php-smarty-general+get-13357@lists.php.net to get a copy of this message
Hi Alain, A bit more background: The associative PHP array is actually the representation of a database row. As such, it has many other fields besides act1, act2 etc. Thats why I can't use the foreach loop. Thanks, Mike. --- Alain Williams <addw@phcomp.co.uk> wrote: > On Sat, Mar 11, 2006 at 07:12:18AM -0800, Michael M > wrote: > > Hi, I need your help with the EVAL function. > > > > In PHP I have a list of 27 fields, like this: > > > > $advert['act1'] = 'foo'; > > $advert['act2'] = 'bar'; > > ... > > $advert['act26'] = 'doo'; > > $advert['act27'] = 'da'; > > > > I know this smells like it should be an array, but > for > > particular reasons it is not. So the template > looks > > like this: > > {$advert.act1}<br> > > {$advert.act2}<br> > > ... > > {$advert.act26}<br> > > {$advert.act27}<br> > > > > Can I replace this with a loop? Something like: > > {section name=foo start=1 loop=27} > > {eval > var="\$advert.act$smarty.section.foo.index"} > > <br> > > {/section} > > What is wrong with: > {foreach from=$advert item=ad } > {$ad}<br> > {/foreach} > > > The code above does not work, by the way. The line > > {eval > var="\$advert.act$smarty.section.foo.index"} > > produces: > > $advert.act1 > > > > If I add braces: > > {eval > var="{\$advert.act$smarty.section.foo.index}"} > > it displays: > > {\.act1"} > > > > So I must be missing something here. > > > > Thanks, > > Mike > > > > __________________________________________________ > > Do You Yahoo!? > > Tired of spam? Yahoo! Mail has the best spam > protection around > > http://mail.yahoo.com > > > > -- > > Smarty General Mailing List > (http://smarty.php.net/) > > To unsubscribe, visit: > http://www.php.net/unsub.php > > > > -- > Alain Williams > Parliament Hill Computers Ltd. > Linux Consultant - Mail systems, Web sites, > Networking, Programmer, IT Lecturer. > +44 (0) 787 668 0256 http://www.phcomp.co.uk/ > > #include <std_disclaimer.h> > __________________________________________________ Do You Yahoo!? Tired of spam? Yahoo! Mail has the best spam protection around http://mail.yahoo.com

« previous php.smarty.general (#13357) next »