


ThinkPHP tag making tutorial, thinkphp tag tutorial_PHP tutorial
ThinkPHP tag making tutorial, thinkphp tag tutorial
This article explains how to make ThinkPHP tags with examples, which has certain reference value for ThinkPHP beginners or developers.
Generally speaking, ThinkPHP’s default tag parser is in Lib/Template/TagLib/TagLibCx.class (version 2.1 is located in ThinkPHP/Lib/Think/Template/TagLib/TagLibCx.class.php), which defines commonly used tag parsers. Commonly used ThinkPHP tags such as volist php
Here we will add a
1. Tag format:
<category parentid='0' ><{$cat.catname}></category>
2. Tag function:
Loop and output the column whose parent ID is parentid
3. Operation steps:
1. Add in the private attribute of tagLibCx.class:
'category'=array('attr'=>'parentid',level=>3)
where attr: attribute of the tag level nesting level of the tag
2. Add analytical function
tag is to obtain the corresponding information by reading the xml file, and then piece it together into the required php source code, and finally output it on the page through echo.
The specific code is as follows:
public function _category($attr,$content) { //把标签的所有属性解析到$tag数组里面 $tag = $this->parseXmlAttr($attr,'category'); //得到标签里面的属性 $parentid= $tag['parentid']; //定义页面解析的变量 $result = !empty($tag['result'])?$tag['result']:'cat'; //定义数据查询的结果存放变量 $key = !empty($tag['key'])?$tag['key']:'i'; $mod = isset($tag['mod'])?$tag['mod']:'2'; //拼凑数据库查询语句 这里直接用了CategoryModel封装好的函数 $sql = "D('Category')->"; $sql .= "getCategorys(".$parentid.')'; //拼凑输出字符 $parsestr = '<?php $_result='.$sql.'; if ($_result): $'.$key.'=0;'; $parsestr .= 'foreach($_result as $key=>$'.$result.'):'; $parsestr .= '++$'.$key.';$mod = ($'.$key.' % '.$mod.' );?>'; $parsestr .= $content;//解析在category标签中的内容 $parsestr .= '<?php endforeach; endif;?>'; return $parsestr; }
getCategorys method in CategoryModel:
/* * 根据parentid得到栏目信息 * $parentid 父id * $withSelf 是否包含自己 */ public function getCategorys($parentid,$withSelf=0) { $parentid=intval($parentid); $categorys=$this->where(array('parentid'=>$parentid,'ismenu'=>1))->order('listorder ASC')->select(); //包含自己 if($withSelf) { $categorys2=$this->where(array('id'=>$parentid,'ismenu'=>1))->limit(1)->select(); $category=array_merge($categorys,$categorys2); } return $categorys; }
3. Quote on the page:
<category parentid='0'> <{$cat.catname}> </category>
Such a label is ready! ! We can get rid of the volist and dynamically output what we want on the page!
There is a complete example in the example on the official website. Please read the manual and go through the example
thinkphp is a small framework. Generally, if you know the mvc working mode, you will soon be able to handle thinkphp

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

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics



To run the ThinkPHP project, you need to: install Composer; use Composer to create the project; enter the project directory and execute php bin/console serve; visit http://localhost:8000 to view the welcome page.

ThinkPHP has multiple versions designed for different PHP versions. Major versions include 3.2, 5.0, 5.1, and 6.0, while minor versions are used to fix bugs and provide new features. The latest stable version is ThinkPHP 6.0.16. When choosing a version, consider the PHP version, feature requirements, and community support. It is recommended to use the latest stable version for best performance and support.

Steps to run ThinkPHP Framework locally: Download and unzip ThinkPHP Framework to a local directory. Create a virtual host (optional) pointing to the ThinkPHP root directory. Configure database connection parameters. Start the web server. Initialize the ThinkPHP application. Access the ThinkPHP application URL and run it.

This tutorial shows you how to find specific text or phrases on all open tabs in Chrome or Edge on Windows. Is there a way to do a text search on all open tabs in Chrome? Yes, you can use a free external web extension in Chrome to perform text searches on all open tabs without having to switch tabs manually. Some extensions like TabSearch and Ctrl-FPlus can help you achieve this easily. How to search text across all tabs in Google Chrome? Ctrl-FPlus is a free extension that makes it easy for users to search for a specific word, phrase or text across all tabs of their browser window. This expansion

"Development Suggestions: How to Use the ThinkPHP Framework to Implement Asynchronous Tasks" With the rapid development of Internet technology, Web applications have increasingly higher requirements for handling a large number of concurrent requests and complex business logic. In order to improve system performance and user experience, developers often consider using asynchronous tasks to perform some time-consuming operations, such as sending emails, processing file uploads, generating reports, etc. In the field of PHP, the ThinkPHP framework, as a popular development framework, provides some convenient ways to implement asynchronous tasks.

Performance comparison of Laravel and ThinkPHP frameworks: ThinkPHP generally performs better than Laravel, focusing on optimization and caching. Laravel performs well, but for complex applications, ThinkPHP may be a better fit.

ThinkPHP installation steps: Prepare PHP, Composer, and MySQL environments. Create projects using Composer. Install the ThinkPHP framework and dependencies. Configure database connection. Generate application code. Launch the application and visit http://localhost:8000.

ThinkPHP is a high-performance PHP framework with advantages such as caching mechanism, code optimization, parallel processing and database optimization. Official performance tests show that it can handle more than 10,000 requests per second and is widely used in large-scale websites and enterprise systems such as JD.com and Ctrip in actual applications.
