


ThinkPHP template variable output, custom functions and judgment statement usage
This article mainly introduces the variable output, custom functions and judgment statement usage of ThinkPHP templates. It is a very practical skill in ThinkPHP template operations. Friends who need it can refer to it
This article explains the examples ThinkPHP template variable output, custom functions and judgment statement usage. It mainly includes three usages: variable output, custom function and judgment statement. Share it with everyone for your reference. The specific analysis is as follows:
Template operation variable output:
Quick output variable
Copy code The code is as follows:
{:function(…)} //执行方法并输出返回值 {~function} //执行方法不输出 {@var} //输出Session变量 {#var} //输出Cookie变量 {&var} //输出配置参数 {%var} //输出语言变量 {.var} //输出GET变量 {^var} //输出POST变量 {*var} //输出常量
Template output
Copy code The code is as follows:
//1 直接调用index操作模板 $this->display(); // 对应Myapp/Tpl/default/Index/index.html //2 调用Index模块的test1操作模板 $this->display('test1'); //对应Myapp/Tpl/default/Index/test1.html //2 调用Message模块的test2操作模板() $this->display('Message:test2'); //对应Myapp/Tpl/default/Message/test2.html //3 调用XP主题的Message模块的test2操作模板 $this->display('Xp@Message:test2'); //对应Myapp/Tpl/Xp/Message/test2.html //4 直接指定模板文件的全名 $this->display('../Message/test3.html'); //对应Myapp/Tpl/default/Message/test3.html
Use judgment statements
We can use if tags to define complex conditional judgments, for example:
Copy code The code is as follows:
<if condition="($name eq 1) OR ($name gt 100) "> value1 <elseif condition="$name eq 2" />value2 <else /> value3 </if>
The condition attribute can support eq and other judgment expressions, the same as the comparison tag above, but does not support "> The usage of symbols such as ", "<" will confuse template parsing, so the following usage is wrong:
<if condition="$id < 5 "> value1 <else /> value2 </if>
must be changed to:
Copy code The code is as follows:
<if condition="$id lt 5 "> value1 <else /> value2 </if>
In addition, we can use php code in the condition attribute, for example:
Copy code The code is as follows:
<if condition="strtoupper($user['name']) neq 'THINKPHP' "> ThinkPHP <else /> other Framework </if>
The condition attribute can support dot syntax and object syntax, for example:
Automatically determine whether the user variable is an array or an object
Copy code The code is as follows:
<if condition="$user.name neq 'ThinkPHP' "> ThinkPHP <else /> other Framework </if>
Or know that the user variable is an object
Copy code The code is as follows:
<if condition="$user:name neq 'ThinkPHP' "> ThinkPHP <else /> other Framework </if>
Since the condition attribute of the if tag basically uses PHP syntax, so It may be more concise to use judgment tags and switch tags. In principle, if it can be solved with switch and comparison tags, try not to use if tags. Because switch and comparison tags can use variable modifiers and system variables. If the IF tag still cannot meet certain special requirements, you can use native PHP code or PHP tags to write code directly.
eq is equal to (==)
neq is not equal to (!=)
gt is greater than (>)
egt is greater than or equal to (>=)
lt is less than (< )
elt is less than or equal to (<=)
heq is equal to (===)
nheq is not equal to (!==)
condition condition
Note
condition attribute value , variables require the $ sign, which is different from other labels.
How to use custom functions
Function calling format of template variables: {$varname|function1|function2=arg1, arg2,
}
Usage example:
Copy code
The code is as follows:{$webTitle|md5|strtoupper|substr=0,3} {$number|number_format=2} {$varname|function1|function2=arg1,arg2,### }
Copy code
The code is as follows:
function Cate($cid){ $Cate=D('Cate'); $Cate=$Cate->where('id='.$cid)->find(); return $Cate['title']; }
If I want to call this function in the template, I can write it like this in the template
Copy code
The code is as follows:{$vo.cid|cate=###}
Note: There can be no spaces between
{ and $ symbols, and there will be no problem with spaces in subsequent parameters;
indicates the parameter position of the template variable itself;
supports multiple functions , supports spaces between functions;
supports variable caching function, and repeated variable strings will not be parsed multiple times.
ThinkPHP template replacement and system constants and application examples######
The above is the detailed content of ThinkPHP template variable output, custom functions and judgment statement usage. For more information, please follow other related articles on the PHP Chinese website!

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.

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.

Regarding PPT masking, many people must be unfamiliar with it. Most people do not understand it thoroughly when making PPT, but just make it up to make what they like. Therefore, many people do not know what PPT masking means, nor do they understand it. I know what this mask does, and I don’t even know that it can make the picture less monotonous. Friends who want to learn, come and learn, and add some PPT masks to your PPT pictures. Make it less monotonous. So, how to add a PPT mask? Please read below. 1. First we open PPT, select a blank picture, then right-click [Set Background Format] and select a solid color. 2. Click [Insert], word art, enter the word 3. Click [Insert], click [Shape]

C++ template specializations affect function overloading and rewriting: Function overloading: Specialized versions can provide different implementations of a specific type, thus affecting the functions the compiler chooses to call. Function overriding: The specialized version in the derived class will override the template function in the base class, affecting the behavior of the derived class object when calling the function.
