Home > Article > Backend Development > Summary of Advanced PHP Templates_PHP Tutorial
How to use PHP to write code quickly, templates seem to be the only choice. But should a PHPer ultimately stick to templates, give up on templates, or use his own templates?
The following ideas belong to all PHPers:
“In fact, the most important thing about templates is to suit your own project needs, not your own habits. For example, a corporate promotional website , the number of visits is not large, and the amount of updates is not large. It can be used the same, or even not used. Direct PHP+HTML writing may be the fastest. There is nothing wrong with it. But if it is a news system or a content publishing system. The two are like this , it is very necessary to use the technology of templates. Because they all have one thing in common, that is, there is a type of page that needs to use the same style of page design. And according to the actual situation, such as the size of the visits, the urgency of the project And the programmer's proficiency in template technology, choose the template technology that is most suitable for the project. This is the first choice. "[from leslee]
"I have been exposed to templates since I started learning PHP, and I use smarty. Template engine (officially supported, powerful), the longer I use it, the more I feel that templates are a good thing. As long as it involves page display, I will use templates to write. I feel awkward if I don't use templates to write programs. PHPer will have the same feeling, because the original intention of the template design is to separate the code and the page and process them separately. After all, no one wants to write code and process the page at the same time. ”
“Some people say that SMARTY is already very smart. Okay, but some people say that SUPERTPL is better, and some people prefer PHPLIB. I think each template has its own advantages and disadvantages. The key is to see what your project needs and which one is best!"[from feifengxlq! ]"There is definitely nothing wrong with using templates. I originally used PHPLIB. After using it for a while, I felt that it was too simple. Each template variable had to be replaced by code, and each time a template was referenced, one line of code had to be written (maybe PHPLIB There is a batch processing function (I am too lazy to know) so I gave up. Later, when I was building a website with plog, I came into contact with smarty. I felt that smarty was too large and it could indeed speed up the development progress, but many functions were not actually used. Therefore, in the end, I had to do it myself. I wrote a template engine, and the function to be implemented by the template is very simple, which is the replacement function of a template variable, plus the include other templates and the foreach block operation function. ”
“I still use PHPLIB, but I know how to do it. Based on your own experience and needs, write some functions or classes to encapsulate some of the most commonly used processing for template output. "[From seraph]" I use my own templates and have to write template parsing code, which is tiring. There are excellent templates.” [From Bantu] “I’ve seen some very powerful people on other forums not using templates... Maybe they’re not that advanced... Personally, I think it’s better to use templates... at least they can divide the work. ..Speed up development. Use your own template? I don’t think it’s necessary...just use the ready-made ones..Add some practical functions you want to the ready-made ones. " [From Phzzy] "I don't use a template engine, but I still use templates, just different from yours. Because the template engine is too slow, it feels difficult to use. ”
“I use a third party, preferably open source. As for which one to use, it depends on personal preference. ” [from leeyupeng] “I still tend to use my own templates that are simple and practical. "[From Yuhi] "Due to performance considerations, I generally do not use universal templates. I will make some trade-offs based on the actual situation, which has certain limitations. "[From Ben] "Decide whether to use templates or not, and what templates to use, based on your needs. It never hurts to be flexible. "[From xlmo] "I personally like simple and fast templates. You can consider using ready-made templates. However, I usually optimize them based on the actual project and delete some functions that are not used. ”
“Using templates generally does not cause bottlenecks. As for efficiency, it mainly affects the following points:
1. After the program and template are separated, one file becomes two or more Okay, then reading the IO of the template is also time-consuming
2. Parsing the template is relatively complicated, generally requiring N preg_match, preg_replace and other functions to process or replace
3. Loading of the template And replacement work obviously requires more memory than not using templates
So to improve efficiency, pay attention to the following points:
1. Choose a template parsing program that supports compilation and caching, which is good for performance It is the most obvious, it depends on how you apply it flexibly
2. The parsing program should be as simple as possible. If all functions are put in, it will be convenient to use, but the performance will be poor
3. When making HTML template pages, follow the simple rules principles, such as following xhtml standards, try not to split a page into many templates and then include them. ”
“If you use a template, I think it’s better to write one yourself if you have the ability. This is also exercise. But if you want to use it, I think Xiaoqiang is good.Can be edited under visualization. "[From jejwe]"I personally think that the visual editability of template files is very important. It cannot be required that the production of template pages must also have a considerable foundation in program development. "[From seraph]"A detailed analysis of specific problems, whether to use templates or not, whether to choose an excellent template class that has already been formed or to write it yourself, everything is based on the specific project development, and you cannot settle on which one. "[From Deepseath] "I feel that the existing templates are not perfect enough, either with few functions or slow speed. It is better to make them yourself. ”
“To summarize, PHP templates can make your code context clearer and the structure more rational. However, the development of PHP templates will always be much slower than the rapid development of PHP applications. In this case, it will affect the development of PHP applications. For every PHPer, no PHP template is the most suitable and perfect for him. Because the so-called PHP template is a popular thing, not personal. Therefore, if you can fully understand the advantages and disadvantages of templates and the principles of PHP application based on a clear understanding of PHP characteristics and applications, PHPer can get the PHP templates you need that suit your own development style. This is also one of the most important ideas of PHP. PHP only provides methods and approaches, not the final solution. Therefore, templates, like PHP applications and products, can be transformed into their own PHP templates. Because it contains the thoughts of the creator.
It is limited by various conditions, such as time and experience, so you may think that it is very difficult to make your own PHP template. In fact, what you need is not to reconstruct a PHP template, but to choose a PHP template that is closest to you and transform it. Because PHP needs inheritance and innovation. Of course, make your own PHP template and implement it step by step, and incorporate the latest ideas and concepts in a timely manner. Individual PHPers can start from the details, from where they need it most and from their own development habits. The PHPer team can work together to localize PHP templates, which is especially practical for companies. Even if you just modify a symbol in the PHP template, just a symbol can show that you have modified it, and it belongs to you. The most important thing is that your own PHP template is never fixed. It will grow with you and become a witness of your PHP journey.
PHP does not require you to be very proficient in grammar; PHP does not require you to develop numerous libraries yourself; PHP does not require you to worry about performance, stability and other characteristics of the language itself. What PHP needs is your logic; what PHP needs is your creativity; what PHP needs is your thinking! "