I've used other php visual studio extensions, but I really like the usability of PHP Tools over the other plugins. Support for namespacing, solution variables and constants, and even for the newest PHP features is second to none.
The intellisense has tons of useful information, I don't find myself looking to php.net nearly as much to remember function/method signatures.
I've really enjoyed working with this plugin. After the trial period, I promptly purchased a license as this is where I'm going to stay.
Hello! I'm from Brazil! You are the best! People like you improve the world! Continue with this work and do not give up ! Congratulations ! I am very happy!Best PHP working tool! The Eclipse and Netbeans team should learn from you to facilitate the work of programmers.
Thank you for your feedback! Could you please specify in more detail what particular performance issue you've been having and more about the size of your project and hardware specs? Just email us at email@example.com, we'd really appreciate that we'll take a look at it ASAP.
Unfortunately Visual Studio Express licensing doesn't support extensions from other vendors than Microsoft. e.g. http://visualstudiomagazine.com/articles/2014/05/21/no-extensions-for-visual-studio-express.aspx
But, there is a free Visual Studio 2013 Community http://www.visualstudio.com/en-us/downloads/download-visual-studio-vs#d-community, which is basically VS Professional. You can install PHP Tools there.
Could you please re-evaluate once you try the extension? DEVSENSE unfortunately can't change the fact VS Express versions are not extensible.
Could you please specify in more detail "detect magic constructors automatically"? We'll be happy to take a look at it, just send us an email to firstname.lastname@example.org or post it to our forum http://support.devsense.com.
The best intellisense support for PHP in VS you will find. Yes, there are PHP specific IDEs that may do much better job, but if you want/need to use your Visual Studio with PHP, PHP Tools for VS is exactly what you're looking for.
Thank you so much for your great review! We're very glad that PHP Tools have satisfied your demands.
About zooming feature.... The setting of zoom is by default page specific in VS. What you can do is to change font setting in VS globally ( https://msdn.microsoft.com/en-us/library/ms165337.aspx ). This can be also done for debug windows font size.
The latest updates (3) have broken a feature that the previous version finally fixed.
I had been waiting for months for a fix for When you type a namespaced function like: \namespace\class::method(args); then hit 'Enter', it aligns the next line's first column with the n in namespace instead of the same column as the '\'.
It was finally fixed 3 versions ago for the first time, the last of the 1.16.**** series. The last 3 (including the current version of 1.17.8019.2015) have broken this feature again.
It's the new improved smart indentation. I'm glad it works for you!
If you'd find some case you'd like to have us handled, please don't hesitate to give us know.
Have a great day,
I found a case where "Expand and Collapse" codes sections is now not working as expected. When you use ?><?php to insert html in a function, the expand/collapse button is no longer on the function statement, but on the html.
01 public static function do_something($args)
03 $var = 1;
The collapse is on line 6 and only collapses lines 6-13 instead of being on line 1 and collapsing lines 1-15
I have VS2013 Premium, loaded and activated the trial version. Tried to debug the hello world project template. It tries to run PHPHelper and install PHP with xdebug. It fails for ;
runphp : Failed.
Downloaded file failed signature verification and may have been tampered with
DependencyFailed : PHP 5.6.0 For IIS Express
DependencyFailed : Xdebug for PHP 5.6
Verifying successful installation...
RunPHP Helper False
PHP 5.6.0 For IIS Express False
Xdebug for PHP 5.6 False
Install of Products: FAILURE
I have admin and C++ redistributatble x64 installed. Any ideas. Googling this problem shows that I am not the only one that has had this but I am not able to find a solution.
Thanks for giving us know about this issue.
First thing please update WebPlatform installer, it's most likely not the cause of the issue, just to rule out some variables.
I'm thinking if that might be some firewall/proxy issue, all these packages are actually located at http://sourceforge.net/ . Could you please check if you are allowed to access it from your location?
Thank you for replying so quickly. I installed it at home, no proxy and it works. The problem was at work. However, I have full access to sourceforge, having downloaded from the site for a number of other items.
Is there a way to manually accomplish the same thing? We have separate .Net and PHP groups and I need to demo PHP integration into VS next week. BTW, I am on the .Net side.
You can accomplish completely the same thing manually. It might be a little bit of hassle though:
- Download https://sourceforge.net/projects/phpinstallermsi/files/zip/runphp.zip/download
- Unzip to %ProgramFiles(x86)%\runphp\
- Download http://sourceforge.net/projects/phpinstallermsi/files/php-5.6.0-nts-Win32-VC11-x86.zip/download
- Run /C copy "%ProgramFiles(x86)%\runphp\runphp.cmd" "%ProgramFiles(x86)%\iis express\PHP\v5.6\runphp.cmd"
- Unzip to "%ProgramFiles(x86)%\IIS Express\PHP\v5.6\ext\"
- and configure xdebug in your php.ini http://docs.devsense.com/Debugging/configuring-xdebug
I Hope that will help.
Thank you for notifying us about this! We will contact Kaspersky team to resolve this issue. But you can be sure, if the installer is signed by DEVSENSE code-signing certificate that it wasn't altered and it does what's supposed to do.
The software is distributed as a trial. You can use all the features like debugging, code completion, function signature helper, tooltips, datatips, navigation features, refactoring and others for 30 days.
After this period, without valid license, you can open your PHP projects and files without the ability to benefit from the features above.
After having a clean install of VS 2012 Ultimate I dowloaded PHP Tools, installed it with no errors, and then after restarting VS it seems that the extension is not installed although it is ( in my control panel I can unistall it for programs and extensions pane). Tried to restart my computer with no results though.
Any help is much appreciated!
Thanks for the post. What VS version do you have? Could you please check if the PHP Tools for VS are really installed in VS, just go to Help | PHP Tools for Visual Studio. If you can see the dialog PHP Tools are installed.
May I also ask you to send us VS Activity log, it would help us determine what's going. Just follow the instructions on this page http://www.devsense.com/doc/phptools/troubleshooting/activitylog-xml
Thanks for designing this very handy plugin!
I have a slight problem though. When I launch the debugger, it stops at breakpoints only if I set "Start Action" to "Current page" in the project properties. Any idea why it's not working with the "Start URL" option?
Some system info:
- Wamp (standard config)
- the "Start URL" I wish to use: http://localhost/MyProject/web/app_dev.php
- In the properties, "Servers" is set to "PHP built-in Web Server" with host name "localhost" (standard config I believe)
- "Apply servers settings to all users" is ticked...
Thanks for your post!
If you have WAMP, and you are also going to deploy your application to Apache... I would recommend not using PHP build-in Web Server, but use WAMP instead.
You'll just have to setup virtual directory on WAMP to the project root and in project properties setup Servers to Use custom web server: and fill the virtual directory of your project/website.
But back to the Start URL option. That should work the same way as current page. Make sure when you hit F5 that your browser is opened with XDEBUG_SESSION_START added to your url. This way xdebug is instructed to start the debug session.
You can also instruct xdebug to try to init debug sessions each time by adding this to your php.ini:
xdebug.remote_autostart = on
VS will handle it correctly and only debug when VS is in debug mode.
Please give me know if any of that helped or you'd need additional assistance.
Thanks for your answer!
I followed your advice and created a virtual directory for my project. It went fine.
However, I am still not able to make xdebug work as expected. XDEBUG_SESSION_START appears indeed in the url of my browser but the page does not stop at breakpoints in VS.
This is not a big issue though, I can live without it and I don't want to waste your time for a minor problem.
Thanks for helping!
Thanks for the response.
You can try to go through debug troubleshooting: http://www.devsense.com/doc/phptools/debug/troubleshooting
But strange thing is it works with current page, but does not with start url option. If you'd like we could take a look together, just write us to email@example.com.
Thanks and have a nice day!
htaccess rules are used by Apache server. PHP Tools by default just use PHP build-in server(which is just simple server that comes with php framework) or IIS Express. Both doesn't support htaccess, but ...
- If you want to use php build in server, there is simple htaccess simulator project (https://github.com/jaytaph/HTRouter ) but it's not feature equivalent and it has its bugs. I wouldn't recommend it for any bigger project.
- for IIS Express you can convert htaccess file to equivalent for IIS/IIS express http://www.iis.net/learn/extensions/url-rewrite-module
- Or the best way to get htaccess to work is just to install Apache and run your projects with Apache ( just setup your project in project properties to use custom server and fill url of the project ). If you are going to deploy your php application to apache server, this is the way to go. So your development/production environment would be the same.
Is it possible to set a custom web root? I have set up a structure for my project that mirrors what will be on the final server it requires having sub directories in the project to protect php's that will only ever be included or required and contain vital information that can never be exposed to the client. It seems the only possible way to set the web root is to put the project file in the directory that is to be the web root but then the project no longer recognizes any folders above the one it's in and puts all the other files in the root of the project. I would prefer if there was an option in the properties dialog for the project to set the web root, since I'm sure this is being passed as a parameter to the built in php server. Will these be a feature available in the future or is there any way to possibly do this already?
You are right, that would be quite useful reasonable feature to configure relative path to actual server root.
For now, you can setup custom web server, and we'll try to put this option into close future update.
I'm writing php in Visual Studio using the PHP Tools extension. The code formatting of the PHP Tools doesn't seem to be working.
The formatting option is available in the options menu under 'Text Editor>PHP>Formatting'.
And I have tried linking the php-extension to the PHP Editor in the options menu under 'Text Editor>File Extension'.
But nothing seems to work. When I try right-clicking a php document and choose Formatting and Validation it goes straight to 'Text Editor>HTML (Web Forms)'.
The problem seems to lie with Visual Studio not recognizing php as a language. Anybody an idea? Thanks in advance.
Thanks for your post.
The reason why our code formatting is connected with HTML formatting is that very often php files also contains HTML code and we have to take into account also HTML formatting settings. In case you don't care about this case, you can turn off VS HTML support in php files (there will still be basic HTML support, syntax highlight and basic formatting) - Enable HTML Editor in PHP files => FALSE.
Anyway php formatting should work in both cases and by default with .php extension files. Just make sure the code is syntactically correct, if not we don't format it as there might be some unexpected results.
If formatting still doesn't work please contact us at firstname.lastname@example.org with code sample and we'll take a look into your particular case.
This is a great tool sir.
Thank you for doing this.
I have a question, can you please add refresh to the Solution Explorer View? I update my source control, but the files don't show up right away. I have to close project just to refresh the Project Folder.