This article mainly introduces the usage of volist tag in Thinkphp. It has certain reference value. Now I share it with everyone. Friends in need can refer to it.
Usually the volist tag is mostly used to query data sets ( select method), usually the result returned by the model's select method is a two-dimensional array, which can be output directly using the volist tag.
First assign a value to the template in the controller, as shown in the following example:
$User = M('User'); $list = $User->limit(10)->select(); $this->assign('list',$list);
In the template definition as follows, loop out the user's number and Name:
<volist name="list" id="vo"> {$vo.id}:{$vo.name}<br/> </volist>
The name attribute of the Volist tag represents the variable name assigned by the template, so it cannot be changed at will in the template file. id represents the current loop variable, which can be specified at will, but you need to ensure that it does not conflict with the name attribute. For example:
<volist name="list" id="data"> {$data.id}:{$data.name}<br/> </volist>
supports outputting part of the data in the query results. For example, output the 5th to 15th records:
<volist name="list" id="vo" offset="5" length='10'> {$vo.name} </volist>
Output the even numbered records:
<volist name="list" id="vo" mod="2" > <eq name="mod" value="1"> {$vo.name} </eq> </volist>
Mod attribute is also used to control the line wrapping of certain records, for example:
<volist name="list" id="vo" mod="5" > {$vo.name} <eq name="mod" value="4"><br/></eq> </volist>
When it is empty, the output prompt is:
<volist name="list" id="vo" empty="暂时没有数据" > {$vo.id}|{$vo.name} </volist>
empty attribute does not support direct html syntax, but can support variable output, for example:
$this->assign('empty','<span class="empty">没有数据</span>'); $this->assign('list',$list);
Then in Used in the template:
<volist name="list" id="vo" empty="$empty" > {$vo.id}|{$vo.name} </volist>
Output loop variable:
<volist name="list" id="vo" key="k" > {$k}.{$vo.name} </volist>
If key is not specified For attributes, the loop variable i is used by default, for example:
<volist name="list" id="vo" > {$i}.{$vo.name} </volist>
If you want to output the index of the array, you can use the key variable directly. Different from the loop variable, This key is determined by the data itself, rather than controlled by the loop. For example:
<volist name="list" id="vo" > {$key}.{$vo.name} </volist>
You can directly use the function to set the data set in the template without the need to Assign values to template variables in the controller and pass in data set variables, such as:
<volist name=":fun('arg')" id="vo"> {$vo.name} </volist>
Related recommendations:
Thinkphp Chinese and English string interception functions display ellipses
cli command running PHP code example in thinkPHP
The above is the detailed content of Usage of volist tag in Thinkphp. For more information, please follow other related articles on the PHP Chinese website!

The article explains how to create, implement, and use interfaces in PHP, focusing on their benefits for code organization and maintainability.

The article discusses the differences between crypt() and password_hash() in PHP for password hashing, focusing on their implementation, security, and suitability for modern web applications.

Article discusses preventing Cross-Site Scripting (XSS) in PHP through input validation, output encoding, and using tools like OWASP ESAPI and HTML Purifier.

Autoloading in PHP automatically loads class files when needed, improving performance by reducing memory use and enhancing code organization. Best practices include using PSR-4 and organizing code effectively.

PHP streams unify handling of resources like files, network sockets, and compression formats via a consistent API, abstracting complexity and enhancing code flexibility and efficiency.

The article discusses managing file upload sizes in PHP, focusing on the default limit of 2MB and how to increase it by modifying php.ini settings.

The article discusses nullable types in PHP, introduced in PHP 7.1, allowing variables or parameters to be either a specified type or null. It highlights benefits like improved readability, type safety, and explicit intent, and explains how to declar

The article discusses the differences between unset() and unlink() functions in programming, focusing on their purposes and use cases. Unset() removes variables from memory, while unlink() deletes files from the filesystem. Both are crucial for effec


Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

SublimeText3 Linux new version
SublimeText3 Linux latest version

VSCode Windows 64-bit Download
A free and powerful IDE editor launched by Microsoft

Dreamweaver CS6
Visual web development tools

Dreamweaver Mac version
Visual web development tools

WebStorm Mac version
Useful JavaScript development tools
