Table of Contents
Articles you may be interested in
Home Backend Development PHP Tutorial Extension plug-in for for loop in smarty template_PHP tutorial

Extension plug-in for for loop in smarty template_PHP tutorial

Jul 13, 2016 am 10:31 AM
for loop Expand plug-in

Smarty is a very popular template in PHP development. I have previously published an article on the PHP smarty Chinese interception plug-in development example to explain how to develop a smarty plug-in. This article will share how to do it for the smarty template. A for loop extension plug-in for our daily program development.

First, let’s talk about what this for loop expansion is used for. Today when I was renovating a previous website, I needed to make a for loop in the smarty template for some specific reasons. Although smarty can be used in the template in the form of {php}...{/php} tags Directly write PHP statement syntax. But since the value of the variable in the template is used in the loop, and the PHP statement written directly in the template cannot obtain the value of the template variable, this idea will not work. Finally, I thought about whether it can also be implemented in smarty. What about using for loops directly in templates?

The following are the specific steps for the author to add a for loop extension plug-in to smarty.

(1)Create a new file in the plugins directory under the installation directory of the smarty template, name it block.for.php, and then enter the following code in this file:

<?php
function smarty_block_for($params,$content,&$smarty){
	if(is_null($content)){
		return;
	}
	$start=0;
	$to=0;
	$step=1;
	foreach($params as $k=>$v){
		switch($k){
			case 'start':
			case 'to':
			case 'step':
				$$k=(int)$v;
			break;
			default:
				$smarty->trigger_error("textformat: 未知属性:'$k'");
		}
	}
	$_output='';
	for($_x=$start;$_x<=$to;$_x+=$step){
		$_output.=$content."\n\r";
	}
	return $_output;
}
Copy after login

(2)Then you can use the for loop directly in the smarty template. The author’s use case is as follows:

php file part code:

$vote='[[[';//我要在模板中将这三个符号转变为三个五角星图片
$smarty->assign('vote',$vote);
Copy after login

Part of the smarty template file code:

{if false!==$vote|@stripos:'['}
{for start=1 to=$vote|@strlen step=1}
<img src="http://www.phpernote.com/images/xing.gif" />
{/for}
{/if}
Copy after login

ok, the above problem is solved. Much the same, if you need to extend more functions for smarty, the method is the same as above, and it can basically be achieved.

Articles you may be interested in

  • The circular table in smarty template is not fully supplemented with td
  • Using php functions in smarty template and how to use smarty template Use multiple functions for one variable
  • Judge the last record of the volist loop in the thinkphp template
  • Method to judge the array is empty in the smarty template
  • Add information in the smarty template Latest tags
  • Smarty template retained variable summary
  • php smarty Chinese interception plug-in development example
  • How to generate random numbers in smarty template

www.bkjia.comtruehttp: //www.bkjia.com/PHPjc/764150.htmlTechArticlesmarty is a very popular template in php development. I have previously published an article on php smarty Chinese interception plug-in development The example shows how to develop a smarty plug-in. This article will share it...
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

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

Video Face Swap

Video Face Swap

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

Hot Tools

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

PyCharm Beginner's Guide: Comprehensive understanding of plug-in installation! PyCharm Beginner's Guide: Comprehensive understanding of plug-in installation! Feb 25, 2024 pm 11:57 PM

PyCharm is a powerful and popular Python integrated development environment (IDE) that provides a wealth of functions and tools so that developers can write code more efficiently. The plug-in mechanism of PyCharm is a powerful tool for extending its functions. By installing different plug-ins, various functions and customized features can be added to PyCharm. Therefore, it is crucial for newbies to PyCharm to understand and be proficient in installing plug-ins. This article will give you a detailed introduction to the complete installation of PyCharm plug-in.

Error loading plugin in Illustrator [Fixed] Error loading plugin in Illustrator [Fixed] Feb 19, 2024 pm 12:00 PM

When launching Adobe Illustrator, does a message about an error loading the plug-in pop up? Some Illustrator users have encountered this error when opening the application. The message is followed by a list of problematic plugins. This error message indicates that there is a problem with the installed plug-in, but it may also be caused by other reasons such as a damaged Visual C++ DLL file or a damaged preference file. If you encounter this error, we will guide you in this article to fix the problem, so continue reading below. Error loading plug-in in Illustrator If you receive an "Error loading plug-in" error message when trying to launch Adobe Illustrator, you can use the following: As an administrator

Share three solutions to why Edge browser does not support this plug-in Share three solutions to why Edge browser does not support this plug-in Mar 13, 2024 pm 04:34 PM

When users use the Edge browser, they may add some plug-ins to meet more of their needs. But when adding a plug-in, it shows that this plug-in is not supported. How to solve this problem? Today, the editor will share with you three solutions. Come and try it. Method 1: Try using another browser. Method 2: The Flash Player on the browser may be out of date or missing, causing the plug-in to be unsupported. You can download the latest version from the official website. Method 3: Press the "Ctrl+Shift+Delete" keys at the same time. Click "Clear Data" and reopen the browser.

What is the Chrome plug-in extension installation directory? What is the Chrome plug-in extension installation directory? Mar 08, 2024 am 08:55 AM

What is the Chrome plug-in extension installation directory? Under normal circumstances, the default installation directory of Chrome plug-in extensions is as follows: 1. The default installation directory location of chrome plug-ins in windowsxp: C:\DocumentsandSettings\username\LocalSettings\ApplicationData\Google\Chrome\UserData\Default\Extensions2. chrome in windows7 The default installation directory location of the plug-in: C:\Users\username\AppData\Local\Google\Chrome\User

Extensions and third-party modules for PHP functions Extensions and third-party modules for PHP functions Apr 13, 2024 pm 02:12 PM

To extend PHP function functionality, you can use extensions and third-party modules. Extensions provide additional functions and classes that can be installed and enabled through the pecl package manager. Third-party modules provide specific functionality and can be installed through the Composer package manager. Practical examples include using extensions to parse complex JSON data and using modules to validate data.

How to install mbstring extension under CENTOS7? How to install mbstring extension under CENTOS7? Jan 06, 2024 pm 09:59 PM

1.UncaughtError:Calltoundefinedfunctionmb_strlen(); When the above error occurs, it means that we have not installed the mbstring extension; 2. Enter the PHP installation directory cd/temp001/php-7.1.0/ext/mbstring 3. Start phpize(/usr/local/bin /phpize or /usr/local/php7-abel001/bin/phpize) command to install php extension 4../configure--with-php-config=/usr/local/php7-abel

Does PyCharm Community Edition support enough plugins? Does PyCharm Community Edition support enough plugins? Feb 20, 2024 pm 04:42 PM

Does PyCharm Community Edition support enough plugins? Need specific code examples As the Python language becomes more and more widely used in the field of software development, PyCharm, as a professional Python integrated development environment (IDE), is favored by developers. PyCharm is divided into two versions: professional version and community version. The community version is provided for free, but its plug-in support is limited compared to the professional version. So the question is, does PyCharm Community Edition support enough plug-ins? This article will use specific code examples to

Detailed explanation of how to install and set up the EclipseSVN plug-in Detailed explanation of how to install and set up the EclipseSVN plug-in Jan 28, 2024 am 08:42 AM

Detailed explanation of how to install and set up the EclipseSVN plug-in Eclipse is a widely used integrated development environment (IDE) that supports many different plug-ins to extend its functionality. One of them is the EclipseSVN plugin, which enables developers to interact with the Subversion version control system. This article will detail how to install and set up the EclipseSVN plug-in and provide specific code examples. Step 1: Install the EclipseSVN plug-in and open Eclipse

See all articles