PhpED is the Integrated Development Environment for PHP (PHP IDE), HTML, CSS, XML, SMARTY, XHTML and other.
Balanced combination of advanced code editor, reliable dbg debugger, productive database connectivity client and fast and secure deployment abilities make PhpED a complete solution for most sophisticated developer needs.
As in any complicated process, in php development a great deal of effectiveness depends on your choice of production tools. According to our customers, PhpED 19.5 speeds up development by 1.75 times
With PhpED you can:
- Major Features
Code creation with our PHP IDE got a lot easier with the new PhpED 19.5 editing features. With PhpED’s new highlighting abilities you can now navigate through your code easily also save the precious developing time.PHP code Foldings sets NuSphere PHP IDE apart from all others.
Php Debugger in NuSphere PhpED
Every program no matter how well written can have bugs or other defects – there’s no exception to this rule, including in your PHP scripts or any other software program that you develop. Debugging is the process of finding the bugs so they can be fixed and the PHP Debugger is the best tool for helping you find the bugs fast and eliminate them from your PHP programs. You can setup remote debugging in PhpED with the help of debug PHP Settings Wizard and DBG Wizard For information about supported platforms and how to install PHP Debugger modules please check debugging PHP on various platforms page.
How to debug a PHP script
There are many techniques used for PHP debugging, varying from desperate PHP code inspection to angry keyboard slamming. A less extreme and more useful approach would be to use print statements and logging embedded in your PHP code, printing out variable values throughout various stages of the program execution.
This approach works well in general, however suffers from several drawbacks, for example:
- It requires significant additional coding effort, which ironically can introduce even more bugs into your php script
- Debugging of PHP with print statements is a highly repetitive process – it’s impossible for a developer to lock onto a problematic region of code while printing everything and everywhere
- Introduction of so many print statements and conditional can affect the performance of your PHP application.
PhpED’s PHP Debugger provides a powerful and easy way to simplify PHP debugging because it gives you complete visibility and control over the execution of PHP scripts and doesn’t require that you make any changes to your PHP code. With PhpED’s PHP Debugger you can:
- Step through lines of php code
- Inspect Call-Stack
- Inspect any variable or class in PHP
- Assign a different value to PHP variables in the script
- Set break points to interrupt php script execution
- Make break points act based on various conditions
- Call a PHP function on the fly and inspect the results
- Support for remote PHP debugging
- All major server platforms are supported
- Parallel debug sessions
- Just in Time debugging
- Change Execution point on the fly
- Global breakpoints with conditions
- Secure debugging: IP security and traffic encryption
- Advanced php profiler
How to use PhpED’s PHP Debugger
PhpED’s PHP Debugger will let you step through your php code, control the execution flow, see the current values of all variables in the script as well as content of the arrays and classes at each stage or even assign different values to the variables on the fly and do all of it without making any changes to php application. This brief tutorial will help you to learn how to use PhpEd’s Php Debugger
Step through lines of php code
PhpED’s PHP Debugger lets you step through the execution of a php scripts, line-by-line, just as you would using a conventional software debugger. Using the PhpED Debugger toolbar, you can:
- Step-In: Execute the next line of php code.
- Step-Out: Return to the line of php code that called the function you are in.
- Step-Over: Execute the current line of php code.
The Call Stack window displays the function calls that brought you to the current script location. The top of the Call Stack window lists the last function called by your script. Below this is the listing for the previously called function. The listing continues, with the first function called in your script located at the bottom of the list. The Call Stack window also shows the names of member functions (or methods). Each member function is prefixed with the name of the class that defines the function.
Inspect any variable or class in PHP
PhpED’s PHP Debugger three ways to see the values of the variables or the members of the PHP class.
- The value of the variable is shown when the cursor is hovered over the variable in PHP code
- The values of the Local variables and classes are displayed in Locals tab of PhpED debugger
- The values of the Global variables and classes are displayed in Globals tab of PhpED debugger
- Variables and classes added to the Watch tab of PhpED debugger and displayed there
Assign a different value to PHP variables in the script
- The PhpED PHP Debugger will let you assign a different value to any PHP variable. This feature allows you test your fix before you change the actual PHP code in the script.
- Set/toggle break points to interrupt php script execution.
- PhpED allows you to easily set and toggle breakpoints anywhere in your PHP code. The lines of code highlighted in blue represent breakpoints. The line in red shows the PHP script current state. You can set/toggle breakpoints from a toolbar, by typing the “F5” key, or by clicking on the red dot to the left of the line of code. Call PHP function on the fly and inspect the results.
- Using Immediate tab of PhpED debugger you can call any php function on the fly in the middle of the execution of your PHP script. Simply type in the function call in the window and press Enter. The functionality of Immediate tab is illustrated here: You can PhpED automatically switch to debug mode when there are PHP errors or exceptions occuer in the code. To set this behavior and other settings for PHP Debugger or Profiler use Tools->Settings->Run and Debug
- The Evaluate/Modify window displays a non blocking dialog that can be used to evaluate an expression, which is too complex for the simple tool tip hint provided by the debugger and when the use of Watch is unnecessary. If the cursor is placed over a variable in the script, the variable under the cursor will be evaluated automatically and displayed in the dialog. The dialog is not modal so you can continue debugging session w/o closing this dialog.
Remote Debugging with SSH Tunnel
SSH Tunnels can be used for the communications with PHP Debugger on remote server. Using SSH Tunnels on SSH equiped remote server you can getrid of the headache of dealing with Firewalls and Routers. Learn more about setting up remote PHP Debugging communication on SSH Tunnels page.
Remote and Local debugging of PHP CLI scripts
- Debugging is also available for Command Line Interface PHP scripts. To set up Remote Debugging of CLI script you need to select Remote Server as a Run Target in project properties and specify Terminal account to login to the remote server as well as Php executable to be used for CLI ru.
- This is of course not neccassary for local debugging of PHP CLI scripts. To run or debug PHP scripts select CLI (Console) from Run menu (HTTP is for regular Web Server scripts debugging).
Php Profiler in NuSphere PhpED . Ask any experience PHP developer about the devil of software programming – chances are the answer will be performance. Very often the performance of the application takes a back seat during the development but once deployed to the customer, performance – or more accurately the lack of one becomes the biggest issue. While your PHP application runs with the speed of light when there are just 3 records in the database and on the local network, in the production environment of the end user, your PHP scripts are slow, very, very slo-o-o-w. And if you ask any experience PHP developer what is the hardest thing to fix the answer of course will be the same – it is performance.
How to tune up performance of PHP Application
The first step in tuning of the PHP Application’s performance is finding the bottleneck.
You want to learn:
- Which PHP scripts take the longest time to run.
- What are the particular lines of code, function calls and class methods where most of the time is spent by the application.
- How does the data above changes when you run through the application multiple times.
- What are the particular lines of code, function calls and class methods where most of the memory is consumed by the application.
- What are the lines of code, function calls and class methods which are visited the most – in other words get the biggest number of hits.
- How does the data above changes when you run through the application multiple times.
How to use PhpED’s PHP Profiler : If you have a PHP script open in PhpED, you can start PhpED’s PHP Profiler for this script by pressing Run Profiler button from PhpED’s PHP Debugger tool bar or by pressing ALT-F9 on the keyboard. Run Profiler toolbar button also provides a drop down with the list of PHP scripts previously ran with the profiler.
When PhpED’s PHP Profiler runs it collects the data from the execution of the script and presents it in Profiler Window. It presents all the information in easy to read, graphical form and puts it right at your finger tips.
Which PHP scripts take the longest time to run
PhpEd PHP Profiler tells you which scripts were the most time consuming. The columns in the PHP Profiler output table show:
- Number of Hits for each line of code in PHP script
- Average execution time of each line of code in PHP script
- Average execution time of all PHP code in the calls made from this line (Time with children)In addition to these columns, there is a Chart column, which contains the graphic presentation of relative execution time of every line of code. The most time consuming line .
What are the lines of code, function calls and class methods which are visited the most – in other words get the biggest number of hits :
PhpED’s PHP Profiler displays the number of time each line of PHP code was visited during the execution. As with any other column in PHP Profiler output window, you can sort the entries in Hit column in ascending or descending order. For example, you can sort the entries in Hit column to see which line of code was hit the highest number of times.
See how to display hits corresponding to each function and methods in PHP Profile here.
What are the particular lines of code, function calls and class methods where most of the memory is consumed by the application :
Similarly to Line Profile, PHP Memory profile in PhpED lets you find the lines where PHP Applications adds or releases the largest amount of memory. Simply sort the Memory tab by clicking on the header and then double click on the top line there. PhpED will open the editor and navigate to the corresponding line of the source code.
How to find the longest running SQL queries in PHP code?
To profile all of the SQL queries in PHP code be sure to check SQL profiler in Profiler menu when running PHP Profiler in PhpED. Profiler results will include SQL Profiler with full information about SQL calls from PHP code , their fetch and execution time for all lines along with visual chart.
How does the data above changes when you run through the application multiple times :
The PhpED PHP Debugger will let you see the results produced by the Profiler in the previous runs of the application. You can navigate to different snapshots of PHP Profiler runs using left and right arrow buttons on Profiler’s tool bar.
- Secure, fast and flexible publishing of your PHP scripts to a remote server right from PHP IDE. All major protocols such as FTP, FTPS, SSH/SFTP, and WebDAV are supported.
- New extensibility scope allows to integrate PhpED with 3rd party tools like php encoders, formatters or html validators. Pre-configured tools already include php documentor, html tidy, cvs client and html validator.
Major PHP IDE Features available in PhpED
- Full support for PHP versions from 4.3 to 8.0 in IDE and the Editor – from functions and local variables to namespaces and aliases
- Dynamic Syntax Highlighting
The editor will automatically switch the syntax highlighting dependant on the position in the file. The strength of PHP is in ability to embed it in the other documents, like HTML. However, sometimes the document becomes too crowded with the lines of code from multiple languages. Auto-switch feature will let you focus on the code and the language that you are currently working on.
- Multiple Language Syntax Highlighting
Code sensitive syntax color highlighter gives you the ability to have separate highlighting for different languages in the same file. Highlighting for each language is of course fully configurable in PhpED’s settings.
- Auto Highlight variable
System highlights all occurrences of a variable in the Editor, when PHP variable is selected. Also highlighted are open/close HTML tags
- Support for all HTML standards – 3.2, 4.0, xhtml, 5.0
- Fast search : Modal non-blocking search in background, starts from the top after full cycle. Fast Search shortcut
- Fast File Open : Open a file in seconds even in multi-thousand files project using PHP IDE’s Fast File Open features
- Diff viewer Shows side by side difference between the file in the editor and local and remote copies
- Worksets Make multiple snapshots of your current Editor context and switch to and from them at any time. Learn more about PHP IDE Worksets
- Auto Highlight variable
Debugging and Profiling :
- Commercial versions of PHP DBG Debugger – the most powerful debugger currently available provides unmatched debugging productivity and safety in both local and remote debugging modes. Learn more
- PhpED advanced php profiler shows executing time for each line, function or module of the code with tenth millisecond’s precision. You can locate all the bottlenecks quickly and efficiently. Profiler saves all the timings among multiple sessions so your can compare them and evaluate the improvements. Learn more
- PHP SQL Profiler in PhpED – In addition to general PHP profiler that allows you to analyze the code performance in order to find bottlenecks in the code, PhpED also provides PHP SQL profiler to trace SQL queries made in PHP code. Learn more..
- Triggering debugger on errors or exceptions. Learn more
- Remote and local debuggin setup with easy to follow wizard
Code Insight :
- Full control over different versions – select which parser to use for any PHP version or HTML and CSS – including HTML5 and CSS3
- Hints show you arguments and returning value for a just typed function, as well as a short description for them.
- Fast functions reference shows you all the PHP functions as they are available from PHP extensions. Nested calls are supported with unlimited nesting level.
- Code intelisense HTML Tags – IDE automatically adds closing bracket when you type in HTML tag
- Auto Add HTML attributes – IDE automatically displays required attributes when the tag is entered
- Code intelisense CSS – with support for CSS3 features
- PHP, HTML, and CSS code Validator
PhpED’s built-in code Validator checks out the syntax in PHP, HTML and CSS code and displays the error – both in the PHP editor and error bar. PHP IDE finds all errors that will cause problems during execution – e.g. missing semicolons, open brackets, missing quotes etc.
- Find usage – Simple click to find all places where selected function, method or class are used in the Project.
- Full integration with phpUnit
- Easy to use UI to setup all options available in phpUnit configure.xml
- Display of Code Coverage
- In-Editor display of the tree of tests, with the ability to execute all or selected tests, navigation to source files and filtering of the display tests
- Display, storage and export of the results to csv or excel.
- See the pages generated by your code in Internet Explorer, Firefox, or Google Chrome without leaving the IDE. You can also use any external browser of course.
Php Frameworks support :
- Php Frameworks are fully supported by PhpED’s code completion, function call cue, find declaration and other PhpED Code Insight features. Frameworks tab provides additional level of support for MVC based PHP Frameworks with the detection and display of views and controllers and their dependencies.
- PhpED Frameworks support is ideal for the development of the application using CakePhp, Joomla, CodeIgniter, Yii, Symfony, Prado or Zend – read the details about MVC PHP Frameworks support.
Project and File Management
- Quick deployment. Once publishing is set up according to your needs, you can upload your PHP projects with a single click!
- SmartSync Features to keep local and remote copies of the files in sync. Intuitive user inteface and symmetric differences display
- Project-wide code explorer in PhpED IDE particularly shows all php classes, methods, properties, functions and variables in every detail and facilitates object-oriented programming.
- Secure deployment. Support for SFTP, FTPS (TLS/SSL) as well as WebDAV/HTTPS (SSL) protocols make deployment and data transfer secure now
- Fast deployment of remote project on local networks. Support of Windows Share (Samba)
- Enhanced integration therefore Integrate PhpED IDE with 3rd party tools like Tortoise SVN or Tortoise CVS.
- Terminal connections (Telnet and SSH) are supported so it can perform your remote administration tasks from within PhpED
- Embedded tools for more effective coding, editing and code management. PhpED IDE includes a number of pre-configured tools like PHP documentor, HTML Tidy, Code Formatter, Html Validator and CVS client.
- SQLite, MySQL, MSSQL, Oracle, PostgreSQL and InterBase support. Similarly quick access to multiple types of databases through a GUI tool boosts up your productivity. Browse the tables, drag and drop fields, tables names, views, stored procedures, triggers etc. and run any sql statement to manipulate the data and the metadata stored in the database – all without leaving the IDE.
- NuSoap wizard and NuSoap connection client let you easily enhance your code with WDSL services. Drag-n-drop is fully supported.
Refactoring of PHP code
- After that Extract any selected block of code into a method or function
- Rename and identifier – variable, function, class or method all of a sudden the system will update all usages of that identifier in the project
- Side by side differences display of before and after refactoring operation
Integrated help system
- Embedded manuals. PhpED is delivered with several most needed manuals, i.e. manuals and references for php, css2, html4.01, html3.2, mysql, postgresql, smarty and others. You can customize the list of manuals likewise other resources you may need for your work.
- Context help for Php, HTML and CSS. Pressing F1 invokes context sensitive help for the code under cursor (php functions, html tags and attribute and css classes).
Supported platforms for NuSphere PhpED:
- Windows 7 SP1, Windows 8, Windows 8.1, Windows 10, Windows Server 2008R2, Windows Server 2012, Windows Server 2012R2, Windows Server 2016 — 32 and 64 bit versions.