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
编号(iteration) | 编号(rownum) | 姓名 | 电子邮件 | 添加时间 |
---|---|---|---|---|
<{$smarty.section.ls.iteration}> | <{$smarty.section.ls.rownum}> | <{$data[ls].username}> | <{$data[ls].email}> | <{$data[ls].addTime}> |
对不起!暂时没有数据。 | ||||
循环的次数为:<{$smarty.section.ls.total}> |
Execution result:
section Variables that can be used in the loop area
Attributes | Type | Is it required | Default value | Description |
---|---|---|---|---|
name | string | Yes | ##n/a | The name of the loop|
[$variable_name] | Yes | n/a | Decided to loop Variable name of times||
integer | No | 0 | 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.||
integer | No | 1 | 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.||
integer | No | 1 | Set the maximum number of executions of the loop.||
boolean | No | true | Determine whether to display the loop.
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!