About the usage of PHP template engine Smarty's built-in functions section and sectionelse

不言
Release: 2023-04-01 12:38:02
Original
1811 people have browsed it

This article mainly introduces the usage of the built-in functions section and sectionelse of the PHP template engine Smarty. It analyzes in detail the techniques and usage of section and sectionelse for loop processing in the form of examples. Friends in need can refer to it

The example in this article describes the usage of the built-in functions section and sectionelse of the PHP template engine Smarty. Share it with everyone for your reference, as follows:

section is another solution for processing loops in Smarty templates besides foreach. Section is more flexible than foreach, just like an improved foreach statement. In addition to having In addition to the same loop features, it also provides many additional options to better control the execution of the loop. In the template, you must use paired section tags. There are two attributes that must be set, name and loop. For the attributes of section, please see the following table:

We use an example to demonstrate the use of {section} and {sectionelse} in Smarty.

Example idea: retrieve the content from the database, assign it to an array variable $_html, assign this array variable to the template, and then traverse the array in the template.

Database, main file index.php, Smarty template initialization file init.inc.php, please refer to the previous article "Analysis of usage of PHP template engine Smarty built-in functions foreach and foreachelse"

/ tpl/index.tpl

   section,sectionelse 
<{section loop=$data name="ls" max="100" start="0" step="2" }> <{if $smarty.section.ls.first}> <{elseif $smarty.section.ls.last}> <{else}> <{/if}> <{sectionelse}> <{/section}> <{if $data}> <{/if}>
编号(iteration) 编号(rownum) 姓名 电子邮件 添加时间
<{$smarty.section.ls.iteration}> <{$smarty.section.ls.rownum}> <{$data[ls].username}> <{$data[ls].email}> <{$data[ls].addTime}>
对不起!暂时没有数据。
循环的次数为:<{$smarty.section.ls.total}>
Copy after login

Execution result:

section Variables that can be used in the loop area

The name of the loop loop [$variable_name] Yes Decided to loop Variable name of times start integer No The initial position of loop execution. If the value is a negative number, the starting position is calculated from the end of the array. For example: if there are 7 elements in the array and specify start as -2, then the index pointing to the current array is 5. Illegal values (exceeding the lower limit of the loop array) will be automatically adjusted to the closest legal value. step integer No This value determines the step size of the loop. For example, specifying step=2 will only traverse the subscripts 0, 2, 4, etc. elements. If step is a negative value, then traverse the array from back to front. max integer No Set the maximum number of executions of the loop. show boolean No Determine whether to display the loop.
Attributes Type Is it required Default value Description
name string Yes ##n/a
n/a
0
1
1
true

Variable name

Description

index is used to display the index of the current loop, starting from 0 (if the start attribute is set, then it starts from this value), increasing by 1 each time, (if If the step attribute is specified, it is determined by this value)
index_prev is used to display the previous loop index value. When the loop starts, this value is -1
index_next is used to display the next loop index value. When the loop is executed for the last time, this value is still 1 greater than the current index value (if the step attribute is specified, then Determined by this value)
iteration is used to display the number of loops
first current The value of this variable is true when the section loop is executed for the first time
last The value of this variable is true when the current section loop is executed for the last time
rownum is used to display the number of loops. This attribute is an alias of iteration. They are the same.
loop Used to display the index value of the last loop of the loop. This value can be used inside the loop or after the loop ends.
show is the parameter of section. The value of show is Boolean true and false. If set to false, the loop will not be displayed. If the sectionelse clause is specified, whether the clause is displayed also depends on the value
total is used to display the number of loop executions. This property can be called not only in the loop, but also after the execution is completed

The above is the entire content of this article, I hope it will be useful for everyone's learning. Help, please pay attention to the PHP Chinese website for more related content!

Related recommendations:

How to use ob_start() in php to clear output and selective output

How to implement php calls Yunpian.net interface sends text messages

#

The above is the detailed content of About the usage of PHP template engine Smarty's built-in functions section and sectionelse. For more information, please follow other related articles on the PHP Chinese website!

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
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
About us Disclaimer Sitemap
php.cn:Public welfare online PHP training,Help PHP learners grow quickly!