Home > Backend Development > PHP Tutorial > 6 smarty tips_PHP tutorial

6 smarty tips_PHP tutorial

WBOY
Release: 2016-07-13 10:30:53
Original
983 people have browsed it

Several often overlooked but useful tags in the php smarty template engine are organized, including the capture tag, config_load tag, php tag, strip tag, fetch tag, and how to use define directly in the smarty template. constants, this article will analyze them one by one with specific examples:

capture tag

The Chinese meaning of capture is capture. Its function is to capture the data output by the template. When we need it, call it to get the purpose of capturing the data. Examples below:

{capture name="test"}
<img src="testimg.jpg">
{/capture}
<div class="image">
{$smarty.capture.test}
</div>
Copy after login

Note: The content between {capture name="test"} and {/capture} is stored in the variable $test, which is specified by the name attribute. Access this in the template through $smarty.capture.test Variable. If the name attribute is not specified, the function will use "default" as the parameter by default, which is similar to the clone method in jquery.

config_load tag

config_load can directly read the contents of the file, which can save the assign step. The following usage example:

test.csv file:

pageTitle = "config_load_test"
bodyBgColor = "#eeeeee"
img = "girl.jpg"
width="100"
height="100"
Copy after login

Then the template index.tpl file can reference the above test.csv file as follows:

{config_load file="test.csv"}
<html>
<title>{#pageTitle#}</title>
<body bgcolor="{#bodyBgColor#}">
<img src="{#img#}" width="{#width#}" height="{#height#}">
</body>
</html>
Copy after login

Note: If a problem like Warning: Smarty error: unable to read resource occurs during the above process, please check whether your test.csv is placed in the smarty configuration directory. The default configuration directory is configs Table of contents.

php tag

When you are used to assigning, have you ever thought about writing PHP code directly in the template file? Although it is highly not recommended, but sometimes you have to do this due to business needs. What should I do? What to do? Take a look at this example:

{php}
global $result;
foreach($result as $key=>$value){
    echo "key=$key,value=>$value<br>";
}
{/php}
Copy after login

strip tag

The function of the

strip tag is to remove spaces and carriage returns within tags. I personally feel that this tag is quite useful. It can compress the final output HTML format. If you want to see the effect, just look at the source code of this website. Yes, isn’t it cool, haha:

{strip}
<div>
    <font color="red">strip</font>
    <span>
        <div>php smarty strip 压缩html输出,www.phpernote.com 看源码效果</div>
    </span>
</div>
{/strip}
Copy after login

fetch tag

The fetch tag has similar functions to the function file_get_contents in PHP. Both can read the contents of the file, and the read result can be assigned to a variable in the form of a string, as shown in the following use case:

{fetch file="./aaaa.txt" assign="result"}
{if is_array($result)}
	<b>is array</b>
{else if}
	<b>not array</b>
{/if}
Copy after login

Constants defined using define in php can be used directly in smarty templates

How to use it:

{$smarty.const.你定义的常量名}
Copy after login

Articles you may be interested in

  • Tips for using MVC pattern in php
  • Eight classic tips for Linux operating system applications
  • smarty Summary of variable operators
  • 10 very practical advanced application skills in PHP
  • Smarty template retained variable summary
  • Improve database performance and reveal SQL optimization skills
  • smarty Summary of logical operation symbols
  • smarty include file Methods of using variables

www.bkjia.comtruehttp: //www.bkjia.com/PHPjc/764180.htmlTechArticleSeveral often overlooked but useful tags in the php smarty template engine include capture tags and config_load tags , php tag, strip tag, fetch tag, and how to use s...
Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template