The following article will analyze 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 obtain the purpose of capturing data. The following example:
{/capture}
{$smarty.capture.test}
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:
bodyBgColor = "#eeeeee"
img = "girl.jpg"
width="100"
height="100"
The above test.csv file can be referenced in the template index.tpl file as follows:
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 the configs directory.
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 the following example:
global $result;
foreach($result as $key=>$value){
echo "key=$key,value=>$value
";
}
{/php}
strip tag
The function of thestrip 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
{/strip}
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:
{if is_array($result)}
is array
{else if}
not array
{/if}
Use constants
Constants defined using define in php can be used directly in smarty templates
How to use it: