search
HomeBackend DevelopmentPHP TutorialSummary of some strategies for php program efficiency optimization, summary of php efficiency strategies_PHP tutorial

A summary of some strategies for PHP program efficiency optimization, a summary of PHP efficiency strategies

1. When file_get_contents can be used to replace file, fopen, feof, fgets and other series of methods Next, try to use file_get_contents, because it is much more efficient! But pay attention to the PHP version problem of file_get_contents when opening a URL file;
2. Do as few file operations as possible, although PHP The file operation efficiency is not low;
3. Optimize the Select SQL statement and perform as few Insert and Update operations as possible (I have been criticized for updating);
4. Use PHP internal functions as much as possible (but in order to find a function that does not exist in PHP, I wasted time that could have been written by writing a custom function. It is a matter of experience!);
5. Do not declare variables inside the loop, especially large variables: objects (this seems to be not just a problem in PHP?);
6. Multidimensional Try not to nest nested assignments in arrays;
7. Do not use regular expressions when you can use PHP’s internal string manipulation functions;
8.foreach To be more efficient, try to use foreach instead of while and for loops;
9. Use single quotes instead of double quotes to quote strings;
10. "Use i =1 Replace i=i 1. It conforms to the c/c habit and is more efficient";
11. For global variables, you should unset() them after use
12. In multiple nested loops, if possible, the longest loop should be placed in the inner layer and the shortest loop should be placed in the outer layer. This can reduce the number of times the CPU crosses the loop layer and optimize program performance.
40 Tips to Optimize Your PHP Code
1. If a method can be made static, declare it statically. The speed can be increased to 4 times.
2. echo is faster than print.
3. Use echo’s multiple parameters (Translation: refers to using commas instead of periods) instead of string concatenation.
4. Determine the maximum number of loops before executing the for loop. Do not calculate the maximum value every time it loops.
5. Unregister unused variables, especially large arrays, to free up memory.
6. Try to avoid using __get, __set, __autoload.
7. require_once() is expensive.
8. Use the full path when including files and it will take less time to resolve the operating system path.
9. If you want to know the time when the script starts executing (annotation: the server receives the client request), using $_SERVER[‘REQUEST_TIME’] is better than time().
10. Check whether strncasecmp, strpbrk, and stripos functions can be used instead of regular expressions to complete the same function.
11. The str_replace function is faster than the preg_replace function, but the strtr function is four times more efficient than the str_replace function.
12. If a string replacement function accepts arrays or characters as parameters, and the parameter length is not too long, you can consider writing an additional replacement code so that each parameter passed is one character. , instead of just writing one line of code that accepts arrays as parameters for query and replace.
13. It is better to use a selective branch statement (translation: switch case) than to use multiple if, else if statements.
14. Using @ to block error messages is very inefficient.
15. Open apache’s mod_deflate module.
16. Database connections should be closed when finished.
17. $row[‘id’] is 7 times more efficient than $row[id].
18. Error messages are expensive.
19. Try not to use functions in for loops, such as for ($x=0; $x
20. Increasing local variables in methods is the fastest. Almost as fast as calling local variables in a function.
21. Incrementing a global variable is 2 times slower than incrementing a local variable.
22. Incrementing an object property (such as: $this->prop) is 3 times slower than incrementing a local variable.
23. Incrementing an undefined local variable is 9 to 10 times slower than incrementing a predefined local variable.
24. Simply defining a local variable without calling it in a function will also slow things down (to the same extent as incrementing a local variable). PHP will probably check to see if a global variable exists.
25. Method calls appear to be independent of the number of methods defined in the class, as I added 10 methods (both before and after testing the method) and there was no change in performance.
26. Methods in derived classes run faster than the same methods defined in base classes.
27. Calling an empty function with one parameter takes the same time as performing 7 to 8 local variable increment operations. A similar method call takes close to 15 local variable increments.
28. Use single quotes instead of double quotes to enclose strings, which is faster. Because PHP will search for variables in a string surrounded by double quotes, single quotes will not. Of course, this can only be done if you don't need to include variables in the string.
29. When outputting multiple strings, use commas instead of periods to separate strings, which is faster. Note: Only echo can do this. It is a "function" that can take multiple strings as parameters (Annotation: The PHP manual says that echo is a language structure, not a real function, so the function is enclosed in double quotes. ).
30. The time it takes for Apache to parse a PHP script is 2 to 10 times slower than parsing a static HTML page. Try to use more static HTML pages and less scripts.
31. Unless the script can be cached, it will be recompiled every time it is called. Introducing a PHP caching mechanism can usually improve performance by 25% to 100% to eliminate compilation overhead.
32. Try to cache as much as possible, you can use memcached. Memcached is a high-performance memory object caching system that can be used to accelerate dynamic web applications and reduce database load. Caching of OP codes is useful so that scripts do not have to be recompiled for each request.
33. When operating a string and need to check whether its length meets certain requirements, you will naturally use the strlen() function. This function executes fairly quickly because it does not do any calculations and just returns the known string length stored in the zval structure (C's built-in data structure used to store PHP variables). However, since strlen() is a function, it will be somewhat slow, because the function call will go through many steps, such as lowercase letters (Annotation: refers to the lowercase function name, PHP does not distinguish between uppercase and lowercase function names), hash search, Will be executed together with the called function. In some cases, you can use the isset() trick to speed up the execution of your code.
Ex. (Example below)
if (strlen($foo)
vs. (Compare with the trick below)
if (!isset($foo{5})) { echo “Foo is too short”; }
Calling isset() happens to be faster than strlen(), because unlike the latter, isset(), as a language construct, means that its execution does not require function lookup and letter lowercase. That is, you actually don't spend much overhead in the top-level code checking the string length.
34. When executing the increment or decrement of variable $i, $i will be slower than $i. This difference is specific to PHP and does not apply to other languages, so please don't modify your C or Java code and expect it to be instantly faster, it won't work. $i is faster because it only requires 3 instructions (opcodes), while $i requires 4 instructions. Post-increment actually creates a temporary variable that is subsequently incremented. Prefix increment increases directly on the original value. This is a form of optimization, as done by Zend's PHP optimizer. It's a good idea to keep this optimization in mind because not all command optimizers do the same optimizations, and there are a large number of Internet Service Providers (ISPs) and servers that don't have command optimizers equipped.
35. It does not have to be object-oriented (OOP). Object-oriented is often very expensive, and each method and object call consumes a lot of memory.
36. It is not necessary to use classes to implement all data structures, arrays are also useful.
37. Don’t subdivide the methods too much. Think carefully about which code you really intend to reuse?
38. You can always break code into methods when you need to.
39. Try to use as many PHP built-in functions as possible.
40. If there are a lot of time-consuming functions in your code, you can consider implementing them as C extensions.
41. Profile your code. The checker will tell you which parts of the code take how much time. The Xdebug debugger includes inspection routines that evaluate the overall integrity of your code and reveal bottlenecks in your code.
42. mod_zip can be used as an Apache module to instantly compress your data and reduce data transmission volume by 80%.

www.bkjia.comtruehttp: //www.bkjia.com/PHPjc/1033986.htmlTechArticleSome summary of strategies for optimizing PHP program efficiency, PHP efficiency strategy summary 1. You can use file_get_contents to replace file, fopen, In the case of feof, fgets and other series of methods, try to use file_get_...
Statement
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
2023年最流行的11款PHP框架2023年最流行的11款PHP框架Jul 07, 2022 pm 03:30 PM

什么是PHP框架?为什么要使用PHP框架?本篇文章就来和大家聊聊PHP框架的优势,并总结分享11款2023年最流行的PHP框架,希望对大家有所帮助!

如何使用PHP框架Lumen开发一个高效的消息推送系统,提供及时的推送服务如何使用PHP框架Lumen开发一个高效的消息推送系统,提供及时的推送服务Jun 27, 2023 am 11:43 AM

随着移动互联网的快速发展和用户需求的变化,消息推送系统已成为现代应用程序不可或缺的一部分,它能够实现即时通知、提醒、推广、社交等功能,为用户和商业客户提供更好的体验和服务。为了满足这一需求,本文将介绍如何使用PHP框架Lumen开发一个高效的消息推送系统,提供及时的推送服务。一、Lumen简介Lumen是由Laravel框架开发团队开发的一个微框架,它是一个

什么是PHP框架?PHP框架与CMS的区别什么是PHP框架?PHP框架与CMS的区别Jun 13, 2022 pm 02:21 PM

在编程中,框架扩展了构建通用软件应用程序的支撑结构。在你开始编码之前,框架就会将程序的基本功能插入到你的应用程序中,从而简化了软件的开发过程。

2023年最流行的5个php开发框架视频教程推荐2023年最流行的5个php开发框架视频教程推荐May 08, 2017 pm 04:26 PM

如果想快速进行php web开发,选择一个好用的php开发框架至关重要,一个好的php开发框架可以让开发工作变得更加快捷、安全和有效。那2023年最流行的php开发框架有哪些呢?这些php开发框架排名如何?

使用PHP框架CodeIgniter开发一个实时聊天应用,提供便捷的通讯服务使用PHP框架CodeIgniter开发一个实时聊天应用,提供便捷的通讯服务Jun 27, 2023 pm 02:49 PM

随着移动互联网的发展,即时通信变得越来越重要,越来越普及。对于很多企业而言,实时聊天更像是一种通信服务,提供便捷的沟通方式,可以快速有效地解决业务方面的问题。基于此,本文将介绍如何使用PHP框架CodeIgniter开发一个实时聊天应用。了解CodeIgniter框架CodeIgniter是一个轻量级的PHP框架,提供了一系列的简便的工具和库,帮助开发者快速

安全加固PHP框架的实施措施安全加固PHP框架的实施措施Aug 07, 2023 pm 06:41 PM

标题:安全加固PHP框架的实施措施引言:随着互联网的快速发展,安全问题成为了一个不可忽视的挑战。而作为最常用的编程语言之一,PHP的安全性也备受关注。为了提高PHP框架的安全性,我们需要采取一系列的实施措施。本文将介绍一些基本的安全加固措施,并提供相应的代码示例。一、输入过滤和验证1.1XSS(跨站脚本攻击)过滤在PHP框架中,使用htmlspecialc

如何使用PHP框架Yii开发一个高可用的云备份系统如何使用PHP框架Yii开发一个高可用的云备份系统Jun 27, 2023 am 09:04 AM

随着云计算技术的不断发展,数据的备份已经成为了每个企业必须要做的事情。在这样的背景下,开发一款高可用的云备份系统尤为重要。而PHP框架Yii是一款功能强大的框架,可以帮助开发者快速构建高性能的Web应用程序。下面将介绍如何使用Yii框架开发一款高可用的云备份系统。设计数据库模型在Yii框架中,数据库模型是非常重要的一部分。因为数据备份系统需要用到很多的表和关

深入探讨swoole协程与PHP框架的结合开发深入探讨swoole协程与PHP框架的结合开发Aug 05, 2023 pm 01:54 PM

深入探讨swoole协程与PHP框架的结合开发国内的互联网发展迅速,更多的开发者开始寻找高性能的解决方案来满足日益增长的用户需求。在PHP领域,swoole协程是一个备受关注的技术,它可以大幅提升PHP的性能,并且非常适合与PHP框架结合使用。本文将深入探讨swoole协程与PHP框架的结合开发,并附带一些代码示例。一、什么是swoole协程swoole是一

See all articles

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

AI Hentai Generator

AI Hentai Generator

Generate AI Hentai for free.

Hot Article

R.E.P.O. Energy Crystals Explained and What They Do (Yellow Crystal)
2 weeks agoBy尊渡假赌尊渡假赌尊渡假赌
Repo: How To Revive Teammates
4 weeks agoBy尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: How To Get Giant Seeds
3 weeks agoBy尊渡假赌尊渡假赌尊渡假赌

Hot Tools

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

MantisBT

MantisBT

Mantis is an easy-to-deploy web-based defect tracking tool designed to aid in product defect tracking. It requires PHP, MySQL and a web server. Check out our demo and hosting services.

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

DVWA

DVWA

Damn Vulnerable Web App (DVWA) is a PHP/MySQL web application that is very vulnerable. Its main goals are to be an aid for security professionals to test their skills and tools in a legal environment, to help web developers better understand the process of securing web applications, and to help teachers/students teach/learn in a classroom environment Web application security. The goal of DVWA is to practice some of the most common web vulnerabilities through a simple and straightforward interface, with varying degrees of difficulty. Please note that this software