Shawn McKenzie wrote:
> Matthew Croud wrote:
>> Hello,
>>
>> First post here, I'm in the process of learning PHP , I'm digesting a
>> few books as we speak.
>> I'm working on a content heavy website that provides a lot of
>> information, a template system would be great and so i've been looking
>> at ways to create dynamic data with a static navigation system.
>>
>> So far, using the require_once(); function seems to fit the bill in
>> order to bring in the same header html file on each page.
>> I've also looked at Smartys template system.
>>
>> I wondered how you folk would go about creating a template system ?
>>
>> My second question might be me jumping the gun here, I haven't come
>> across this part in my book but i'll ask about it anyway. I often see
>> websites that have a dynamic body and static header, and their web
>> addresses end like this: "index.php?id=445" where 445 i presume is some my
>> file reference.
>> What is this called ? It seems like the system i'm after but it doesn't
>> appear in my book, If anyone could let me know what this page id
>> subject is called i can do some research on the subject.
>>
>> Thanks for any help you can provide :)
>>
>> Matt.
>>
>
> I have written a popular theme/template system for some CMS systems. In
> my opinion, templating is only needed for those that are totally
> ignorant of the concept of programming languages in general. It helps
> for those designers that know HTML or they export their graphics as HTML
> and know enough to modify it or add some simple tags like {post-date} to
> HTML. That's it! No loops, no ifs, nothing. Simple things
> designers/users can add that represent some complex code, queries, etc...
>
> PHP IS a template language. You can easily separate your logic and
> design/display using PHP. Anything more than abstracting some complex
> code to some simple var is overkill. If you want to display a dropdown
> of categories, and the code needed is a database query and some PHP
> logic, etc., then it makes sense in my above scenario to do this in code
> and then assign the result to a template var like {categories-dropdown}
> that the designer/user can use in the HTML. Other than that its just waste.
>
> Smarty and similar template approaches just take PHP (but more limited)
> and make it look slightly different. Anyone who doesn't know or want to
> know anything about programming will not see the difference between PHP
> and Smarty. Consider the following:
>
> PHP: <?php echo $somevar; ?>
>
> Smarty: {somevar}
> //oh except in your PHP you have to do the following
> //$smarty->assign('somevar', $somevar);
> //$smarty->display('some.tpl');
>
> PHP: include('header.tpl');
>
> Smarty: {include file="header.tpl"}
>
> Don't even get me started on loops and conditionals. Smarty just
> replicates PHP, except it looks slightly different and is much less
> powerful. If you are confused with:
>
> if ($something) {
> echo "Some stuff...";
> } else {
> echo "Some other stuff...";
> }
>
> Why is this better:
>
> {if $something}
> Some stuff...
> {else}
> Some other stuff...
> {/if}
>
> Like I said earlier, if you have some complex code that you can reduce
> to a simple tag or something that a designer can insert into HTML then
> great. If not then it is just unsuccessfully trying to replicate PHP!
Actually, I forgot myself and the alternative syntax:
if($something):
echo "Some stuff...";
else:
echo "Some other stuff...";
endif;
Hardly different...
--
Thanks!
-Shawn
http://www.spidean.com
--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php