On 5/25/09 10:04 AM, "Stuart" <stut...@gmail.com> wrote:

> Quick question, how would you implement the following using your
> XML-based template syntax...
> 
> <div class="option <?php if (!empty($option_class)) { echo
> $option_class; } ?>"> ... </div>
> 
> It's worth noting that I'm simply suggesting a different way of
> looking at the world. If you have a templating system you're happy
> with then feel free to continue using it, but I'd encourage you to
> take the time to consider whether it actually gives you any tangible
> benefits. I've used Smarty as well as a number of proprietary
> templating systems and I'm yet to come across one that can justify its
> existence over simply using PHP.
> 
> It's also worth noting that when I refer to a "templating system" I
> mean something that introduces an extra step when running a template.
> I consider the template classes I use to be a templating system but
> they do nothing but formalise the process of passing data to other PHP
> scripts and providing utility functions for them to use.

revisiting the template question is interesting. i'm grateful for this
discussion.

as far as your question goes, with phplib-template, i'd do:

<div class="option {option_class}"> ... </div>

and in the php it is:

$t->setVar('option_class', empty($option_class) ? '' : $option_class);

or some equivalent code. $t is the template object.

the interesting part is trying to explain why i like this better than your
method. perhaps it's because it reduces the page assembly task to a sequence
of regexp replacements and i'm more comfortable with that than i am with
passing variable state to an included php file. why would i be? maybe i'm
more comfortable looking at the world as nothing but strings and in this
world, manipulating them is my job.

there's certainly something i like about not having any php in my html
templates but i can't say exactly what.

i don't think i could come up with better justifications for my current
methods without trying our the alternatives for a decent period. 



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

Reply via email to