1. Advantages
1. Cross-platform, superior performance, 45% better performance when combined with Linux/Unix than Windows, and very economical when combined with many free platforms, such as LAMP (Linux /Apache/Mysql/PHP) or FAMP ( FreeBSD/Apache/Mysql/PHP), or if the data application is large enough, you can consider changing to PostgreSQL or Oracle, which supports N types of databases. (N >= 10)
2. The syntax is simple, if you are learning C and Perl, it is easy to get started, and it is partially similar to ASP. There are mature development tools, such as NuPHPed, or Zend Studio, etc., and you can use Eclipse and so on under the Linux platform.
3. Currently, mainstream technologies are supported, such as WebService, Ajax, XML, etc., which are sufficient for application.
4. There is relatively complete support, such as using ADODB or PEAR::DB as the database abstraction layer, using Smarty or smart template as the template layer. If it is PHP 5.1, you can also use PDO (PHP Data Object) to access it. database.
5. There are many mature frameworks, such as the framework that supports MVC: phpMVC, the framework that supports event-driven events like ASP.net: Prado, the framework that supports rapid development like Ruby On Rails: Cake, etc., which are enough to satisfy you. application requirements.
6. PHP 5 already has a mature object-oriented system that can adapt to basic object-oriented requirements. Suitable for developing large-scale projects.
7. There is a mature community to support PHP development.
8. At present, many large-scale applications use PHP, such as Taobao, Yahoo, 163, Sina and other large portals. Many use PHP as their development language, so large portals can choose it. I think it is enough. It's ready for your use.
9. There are many open source frameworks or open source systems that can be used. For example, the well-known open source frameworks include Zend Framework, CakePHP, CodeIgniter, symfony, etc., open source forums include Discuz!, Phpwind, etc., open source blog WordPress, and open source online stores. Systems such as Ecshop, ShopEx, etc., and open source SNS systems such as UCHome, ThinkSNS, etc.
10. Low cost of use (linux apache mysql php kernel)
2. Disadvantages
1. The multi-threading support is not very good. Most of the time we can only implement it through simple simulation.
2. The syntax is not very strict. For example, variables can be used without being defined. In c, java, and c, variables must be defined before they can be used.
3.PHP’s explanation and operation mechanism. This operating mechanism enables all related resources to be recycled after each PHP page is interpreted and executed. In other words, PHP has no way to make an object resident in memory at the language level. In PHP, all variables are page-level. Whether they are global variables or static members of the class, they will be cleared after the page is executed. Take JSP as an example. In JSP, the scope of Java Bean has four valid values: Page, Application, Session, and Request, which correspond to the four lifetimes of page, program, session, and request respectively. But in PHP, there is only one lifetime of Page.