Five tools that PHP programmers should use

Source: Internet
Author: User

After I participated in several large PHP projects and wrote a lot of PHP code, I found that many tools can improve the Code Quality and simplify the release, making it much easier to be a PHP developer. Many of these tools may already be used. However, since some people have not even noticed the existence of these tools, I will start from now on. Well, I will not talk nonsense. Below is a list of tools that I think all PHP programmers should know. Phing-A Project Construction System

Phing is a Project Construction System Based on Apache ANT. Its name Is PHing Is Not GNU make. Phing can do anything that can be done by a traditional build system such as GNU make without steep learning curves.

The idea behind phing (and other building systems) is to evaluate a series of correlations and then execute a series of PHP classes to correctly install and configure an application system. The construction process is controlled using a simple XML configuration file. Out of the box, phing can execute a series of replicas (for example, changing the include path between your development version and product version) execute SQL statements, move and copy files, and run external scripts. By extending the "task" class contained in the release package, you can also create your own custom tasks.

Phing is invaluable to anyone who needs to deploy large PHP applications on more than one server. At the same time, I found that it is also useful for simple PHP scripts.

Xdebug-debugging and analysis tools

Xdebug is a PHP extension that helps you debug and analyze scripts. The most useful feature of Xdebug is the new attention information, warning information, and error information displayed after activation. If a script cannot run normally, Xdebug will output a full heap trace of the error information, with the function name, parameter value, source file, and row number. This is a welcome feature for programmers who are tired of the poor error reporting feature that PHP only carries by default.

This extension has many more advanced features that allow developers to analyze code coverage, collect analysis information, and interactively debug scripts. The profiling functionality function is particularly useful. Analyzer uses a common output file format, allowing you to quickly discover bottlenecks in your code using tools such as KCacheGrind. For any serious developer, a good analyzer is a basic tool that allows you to properly optimize your code and avoid the dangers of premature optimization.

PHPUnit-unit test framework

PHPUnit is a lightweight PHP testing framework. It is a complete transplantation of JUnit 3.8.1 under PHP5 and a member of the xUnit testing framework family (they are based on the design of the software model pioneer Kent Beck ).

Unit testing is the basis of several modern agile development methods, making PHPUnit a key tool for many large PHP projects. This tool can also be used by the Xdebug extension discussed earlier to generate code coverage reports and can be integrated with phing for automatic testing.

Propel-ORM (Object link ing) Framework

Propel is an object relational ing (ORM) framework under PHP5, which originated from the Apache Torque project. It provides a complex but easy-to-use database abstraction layer, allowing you to use database entities in PHP like using common classes and objects. Propel allows you to define your database in a simple XML format. This XML file is used to map databases and generate static classes used in applications.

Propel is embedded in the popular Symfony PHP framework (and others), which makes the code more flexible, modular, and portable. This project has outstanding documentation for The project has and a great support community.

PhpMyAdmin/phpPgAdmin-web-based database management system

PhpMyAdmin is one of the most useful management tools for any database (PostgreSQL and SQLite are phpPgAdmin and phpSQLiteAdmin. It helps to do everything-from creating and deleting databases for debugging applications to backing up. Installing it is usually the first thing I do after installing Apache, PHP, and MySQL on a LAMP server. If you have never heard of MySQL, install it now.

Other tools

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.