⬆️ ⬇️

List of useful tools for php developer

PHP is one of the most widely used languages ​​for creating websites. PHP frameworks such as Zend, CakePHP, CodeIgniter, etc., and open source classes and libraries have simplified development.

Regardless of whether you are an experienced developer or a beginner, the tools you use have a direct impact on your productivity. Here is a list of really useful utilities and extensions for PHP developers who will help speed development, and improve the final quality of the code.





Accelerators



eAccelerator

Free free php accelerator, optimizer, and dynamic cache. It increases the performance of PHP scripts by caching them in their compiled form. Optimization also increases the speed of the scripts. eAccelerator usually reduces the load on the server and increases the speed of the PHP code by 1-10 times.

ionCube PHP Accelerator

ionCube PHP Accelerator is an easy-to-install PHP Zend extension that caches PHP code and can significantly speed up PHP scripts without any changes in the code itself.

Windows Cache Extension for PHP

The module for IIS7 performs the functions of a PHP accelerator. Supports PHP 5.2 and 5.3. Cache php bytecode into memory

Alternative PHP Cache

A free and open system for caching precompiled PHP scripts can significantly increase the performance of PHP scripts running from under mod_php.



Build system



Phing

Build based Apache Ant system. Allows you to do everything that you can do with traditional build systems, such as GNU make. Uses simple XML for build files and extensible PHP task classes. Allows you to run PHPUnit and SimpleTest unit tests, do file processing (ie, replace tokens, XSLT transformation, etc.), file system operations, interactive project assembly, execute SQL code, CVS / SVN operations, create PEAR packages, and much more.

')

Code



BeautifyPHP

Beautify PHP is a completely free service, formatting PHP code in accordance with PEAR standards.

PHP Beautifier

This program reformats PHP 4 and PHP 5 files automatically.

PHP Object Generator (POG)

Open source PHP code generator that automatically generates object-oriented classes (PHP4 / PHP5) for accessing a database with CRUD methods.

UML2PHP5

UML2PHP5 is a plugin designed for the DIA charting application. Automatically generates PHP code corresponding to diagrams.

Instant SQL Formatter

Instant SQL Formatter is a free online service for formatting SQL code. It can also translate SQL code in C #, Java, PHP, DELPHI and other languages ​​(as strings). Allows you to display a list of database objects in SQL code, such as tables, columns, functions.

phpMyEdit

MySQL table editor and PHP code generator. Main features of phpMyEdit: generation of table change code; adding records, changing, viewing, copying and deleting; sorting, filtering and pagination for tables; query to other tables (one-to-many relationship); access rights configuration; various navigation options; customizable CSS design; logging user actions; multilingual.

PHP Obfuscator

Obfusts PHP code. Does not require additional libraries and components installed on the server. Allows obfustsirovat functions, variables and remove spaces.

Code eclipse

PHP obfuscator, which turns ordinary PHP code into a terrible, unreadable code with minimal losses in execution speed and without any loss in compatibility.



Database



PHP Toolkit for ADO .NET Data Services

Allows PHP developers to access data sources created using ADO .NET Data Services. The goal of the project is to provide the same functionality as the .NET library.

Propel

Propel is an ORM framework for PHP5. Gives access to the database using special objects that have a simple API for storing and retrieving data.

ADOdb

Object-oriented library written in PHP, which allows you to abstract from operations with a specific database for portability. Modeled with Microsoft's ADO, but has many improvements that make this library unique (such as Pivot tables, Active Record support, HTML generation for paginating recordsets with links to the next and previous pages, cached recordsets, HTML menu generation, etc. ). Supports a large number of databases: MySQL, PostgreSQL, Interbase, Firebird, Informix, Oracle, MS SQL, Foxpro, Access, ADO, Sybase, FrontBase, DB2, SAP DB, SQLite, Netezza, LDAP, and standard ODBC, ODBTP.

Doctrine

Doctrine is ORM for PHP 5.2.3+, which is based on the base abstraction layer (DBAL). One of the key advantages is the ability to write database queries in the object-oriented SQL dialect - Doctrine Query Language (DQL), created under the impression of Hibernate HQL. DQL provides developers with a powerful, flexible alternative to SQL, which does not require unnecessary re-writing.



Debugging



Xdebug Debugger and Profiler Tool

Xdebug is an extension for debugging php scripts written by Derick Rethans, one of the developers of the PHP language. Xdebug provides the following information: function call stack, memory allocation. Xdebug features: profiling, code coverage analysis, protection from infinite recursion, interactive script debugging. You should also check: Webgrind is a web interface for Xdebug profiling written in PHP, MacGDBp is a Mac OS X client that allows you to debug PHP applications using Xdebug.

Firephp

FirePHP allows you to send debug messages to the Firebug console by calling php methods. All information is sent through the X-FirePHP-Data headers, without interfering with the main content of the pages.

DBG - PHP Debugger and Profiler

DBG is a full-featured, interactive PHP debugger. It can work on a test or / and production server and allows you to debug scripts locally or remotely, from the IDE or from the console.

Php debug

It helps in debugging PHP code, shows the script execution path, displays all variables, execution time, included files, executed requests, watch variables ... This information is collected during the execution of the script and displayed upon completion and then can be used at any time.

More: Debuglib , Krumo



Development



PHP CodeSniffer

PHP CodeSniffer is a PHP5 script that checks the code for compliance with coding standards. May help prevent common semantic errors made by developers. Easily integrates with SVN to verify the code before committing.

phpDocumentor

An analogue of Javadoc, written in PHP, phpDocumentor can be invoked from the command line or the web interface to create documentation from php code. phpDocumentor maintains a link between the documentation, connecting user-level documents, such as tutorials and creating highlighted code with cross-links to regular PHP documentation.

Doxygen

Doxygen is a cross-platform source documentation system that supports PHP (as well as many other languages).

Doxygen generates documentation based on a set of source texts and can also be configured to extract the program structure from undocumented source codes. It is possible to create graphs of dependencies of program objects, class diagrams and source codes with hyperlinks.

PHP Depend

PHP Depend is an analyzer and measurement tool that can provide a wealth of useful information about a PHP project. PHP Depend generates a large number of metrics, the values ​​obtained can be used to determine the quality of the project and its parts that need refactoring.

phpLangEditor

Firefox add-on simplifies the translation of file and variable languages ​​in PHP scripts.



IDE & Editors



Netbeans

NetBeans is a free, fast, cross-platform IDE that understands PHP well. It is nice to write PHP code in it, because there are all the necessary tools for this - highlighting, code completion from all connected files, PHP class browser, pop-up documentation on standard functions, and so on. NetBeans can download and upload files to remote servers via FTP and SFTP, has an advanced SQL terminal and fully automates work with SVN or CVS.

Aptana PHP Development Environment

The IDE is equipped with contextual help, code completion, highlighting and syntax checking, has a built-in debugger and an auto-generator of typical code blocks. The environment supports the development of Ajax applications, has the means for visually navigating through the code, maintaining the task list (Todo) and preparing project documentation. An integrated web server allows you to instantly evaluate the result of work. Built-in testing tools support the ability to evaluate the display of a prepared project in various versions of web browsers. Aptana PHP is designed as a module for Eclipse or for the specialized Aptana Studio environment built on the basis of Eclipse.

PHPEclipse

PHPEclipse is a plug-in for eclipse with the following features: syntax highlighting, pair brackets, code folding, code completion, php documentation integration, code templates, support for DBG and XDebug, support for CVS & SVN ++.

Zend Studio

Zend Studio is a professional environment for developing and debugging web projects. A distinctive feature of the program is the ability to remote debugging and profiling. Zend Studio includes a PHP package with an extensive list of precompiled extensions as an option. Also included in the environment package is Zend Optimizer, which is a server module for running scripts that are encoded using Zend Encoder and Zend SafeGuard Suite, as well as slightly accelerating. The seventh version of Zend Studio introduced support for PHP 5.3, integration with the Zend Framework and Zend Server, improved source code editing and various program performance improvements.

PHPanywhere

PHPanywhere is an online PHP editor. Powered by Ext JS. All necessary functions are present - highlighting, encoding, etc. Using the service is completely free and requires only registration.

VS.Php For Visual Studio

VS.Php is an integrated development environment based on Visual Studio IDE that allows you to develop, create, debug and implement PHP applications on a professional level, using all the features offered by VisualStudio.Net. The PHP code editor has great functionality, providing access to the built-in PHP functions, as well as written functions and classes ..

NuSphere phed

NuSphere PhpED is a professional integrated processing environment designed to build applications using databases and PHP, HTML, XML, CSS. A robust code editor, excellent code highlighting in PHP, XML, XHTML, HTML, CSS and javascript, a powerful PHP debugger, profiler and publisher - all in one.

The program also includes integrated database and CVS clients, SOAP services, HTML validator and Code Formatting tools, support for working with Smarty, Unicode editor, SFTP is supported for secure downloads and downloads, Telnet, SSH terminals for remote administration, support for MySQL functionality, Oracle, MSSQL SQLite, Interbase, error analysis support, fully customizable graphical user interface, PHP code analyzer, and more

Eclipse pdt

PDT (PHP Development Tools) is an Eclipse plugin designed for PHP developers. It is much more than just a decent free replacement for Zend Studio and NuSphere PhpED. The pdt-all-in-one distribution includes the Eclipse platform and all the necessary plug-ins for PHP development.

Jetbrains Web IDE EAP

JetBrains Web IDE is an IDE for web programming. It is built on the basis of the JetBrains IDE Framework. The Web IDE is available in two versions: the standard version includes support for HTML, CSS, Javascript. PHP and SQL support is added to the PHP Developer edition.



More: PhpED , PHPEdit , phpDesigner , Komodo IDE , Free Komodo Edit , TextMate , PHP Expert Editor , Notepad ++ , Notepad2 , Code Lobster



Security



PHP Intrusion Detection System (PHPIDS)

PHPIDS is an easy-to-use, well-structured, fast attack detection system. At the moment, he is able to catch all kinds of XSSs, SQL injections, splitting a query, passing through directories, RFE / LFI, DoS and LDAP injections. Copes with obfuscated attacks based on Unicode, encodings, etc. It connects to the project as a library, accepts an array with all input data that requires verification, returns an object with information about attack attempts detected in the input data and the degree of risk for each of them, based on a set of tested and tested rules, each attack is assigned a rating danger. This will allow you to easily save attack statistics or send notifications to the development team.

PhpSecInfo

PhpSecInfo adds the equivalent of the phpinfo () function, which provides security information for the PHP environment, and offers tips for improvement. This is not a replacement for a secure development technician, and does not do any kinds of code or application audits.



Installation



PHPConfig

A graphical shell for configuring php via the php.ini file. It supports all standard functionality, and has a special tab for plugins.

Lighty2go

Lighty2Go is a portable version of LightTPD, MySQL & PHP (LiMP) for Windows.

Pamp

Personal AMP - Apache, MySQL and PHP - set for S60 mobile phones.

Wampserver

Allows you to install Apache, PHP and MySQL on Windows. Comes with PHPMyAdmin for database management. WampServer can work with different versions of PHP, MySQL and Apache, and switch between them.

Server2go

The web server does not require installation and works on write-protected media. It can be used directly from a CD, from a USB flash drive or just a folder on a hard disk without the headache of configuring PHP, Apache and MySQL.

Denwer

The Gentleman Web Development Kit (“D.N.w.r.”, read Denver) is a project by Dmitry Koterov, a set of distributions (Apache, PHP, MySQL, Perl, etc.) and a software shell used by Web developers. to develop websites on a “home” (local) Windows machine without having to access the Internet. The main feature of Denver is the convenience for remote work on several independent projects at once and the ability to place it on a flash drive.

Xampp

XAMPP is php, mysql, apache + perl module + filezilla + eAccelerator + still various buns. There are versions for Windows, Linux, MacOS and Solaris.

More: AppServ



Testing



PHPUnit

PHPUnit is one of the xUnit testing frameworks and simplifies writing tests, as well as running them and analyzing results.

Simpletest

SimpleTest is an analogue of JUnit / PHPUnit. It supports mock objects and can be used to automate regression testing of web applications. This is possible with the help of a scriptable HTTP client that scans the page and simulates such things as clicking on links and submitting forms.

vfsStream

vfsStream is a file stream wrapper, useful for unit testing to create mock file system objects. It can be used in conjunction with any testing framework, such as SimpleTest or PHPUnit.



Continuous integration



phpUnderControl

phpUnderControl is an add-on for the CruiseControl automated build system that contains some of the best PHP development tools. The project aims to make the first steps with PHP and CruiseControl as easy as possible. A utility is added to phpUnderControl to modify the existing deployed CruiseControl system.

Xinc

Xinc is a continuous integration server written in PHP 5. It has built-in support for Subversion and Phing (that is, PHPUnit), and can be easily modified to support other version control systems and build systems.



Cheat sheets



PHP Cheat Sheet by AddedBytes

A one-page cheat sheet that lists arguments for date formatting functions, regular expression syntax, and common functions.

PHP 5 Online Cheat Sheet

Type conversion: Boolean, Integer, String, Array, Object / Class; Lines: functions, processing; Arrays: functions, processing; Classes: declaration, declaration of methods, visibility; Date / Time: functions, formats; Predefined variables: $ _SERVER, $ _FILES

The CheatSheet - CakePHP 1.2

Includes CakePHP config variables, global functions, code design conventions, paths. Also contains properties, methods and callbacks of functions for Models, View, Controller and Helper classes.

PHP $ _SERVER Superglobal on Apache & IIS

The table of keys defined in the $ _SERVER superglobal variable on Apache and IIS. This table allows to estimate the difference between the server in the case of migration from one to another.

Smarty cheat sheet

Provides tips for Smarty template designers.

Source: https://habr.com/ru/post/68569/



All Articles