In Php you can use single quotes and double quotes to enclose strings. But there is a subtle difference between using single quotes and double quotes. When using double quotes, any variable referenced inside the string gets expanded. You don't have to concatenate strings and variables, instead simply put the variables inside the string.

In VS.Php 2.5, we improved the support for variables inside double quoted strings. They are color coded correctly as if they were outside the string. The following illustrates a simple double quoted string referencing a Php variable:

In VS.Php 2.5 we extended the support for class autoloader. The idea is that any time you reference a class, VS.Php will be able to find the file where the class is defined. In the project settings you can specify one or more class name templates. These templates are used to turn a class name into a file name. By default, VS.Php uses %s.php and class.%s.php to map a class into a file name. Replace the %s with the class name. You can define as many as you want in the project properties. The following screenshot shows the setting in the project properties.

VS.Php comes with a deployment feature that lets you copy your project to a remote server over Ftp, SFtp or Ftp/S. You can deploy the whole project or individual files.

But sometimes, you need to copy files from the remote server back to the local machine. We created the website copy feature to allow you to have full control on what's on the server and on the local machine. You can drag-n-drop files in either direction. There is a synchronize feature that also helps you make sure both sides and in sync.

We created a tutorial to illustrate this feature and how to use it:

One of the most popular design patterns on Php is the Model-View-Controller (MVC). Many Php frameworks use this pattern as a way to separate the presentation from the data layer and keep things loosely coupled.

The Zend Framework comes with its own implementation of the MVC pattern. If you are not familiar with it, please read this getting started guide.

The first step is to create a new Zend MVC project:

VS.Php 2.5 will include the Zend Framework along with the standard PEAR distribution. This will enable you to easily start using the Zend Framework out of the box. The Php 5 runtime is also preconfigure to include the Zend framework path so your scripts will be able to find the framework files.

We also extended the auto loader class so when you reference a Zend framework class, intellisense will be able to find the file where the class is defined and will enable intellisense for the class.

One of the coolest features in VS.Php is the ability to read PhpDoc comments and use the data type information in them to provide rich intellisense support.

But creating PhpDoc comments can be tedious and mechanical. VS.Php 2.5 comes with a feature that is designed to make the process a lot easier for you. When creating a comment for a function or method which multiple parameters, VS.Php can prepopulate the PhpDoc comment data from the code.

The idea is to speed up the process of getting the PhpDoc comments into the code and let you enjoy a better intellisense experience with VS.Php.

In the next couple of days, I'll be blogging about the new features that will be available in VS.Php 2.5. One of these features is command line projects.

Command line projects let you create and debug Php scripts without using a web server or a browser. VS.Php launches the command line version of Php and uses XDebug to debug the script.

In this new project type you can set the command line parameters for your script. Other than that, it behaves pretty much exactly as a web project. This tutorial helps illustrate the new project type:

This week, I'll be sharing information about the upcoming VS.Php 2.5 release. The first feature I'll like to share is the support for new project types.

Here is a screenshot of the project types available in VS.Php 2.5:

These are the new project types:

This is a maintenance release for VS.Php 2.4. The following changes are included:

  • Fix Vista DEP issues
  • Fix Xdebug issues when steping into static method calls. Prevents certain lock ups.
  • Allow you to select the platform from the standard toolbar no matter what node in the project is selected. Before you could only do this if you selected the solution node.
  • Implement the "Open Folder" and "Copy File Path" menus from the text editor when right clicking on the file tab.
  • FTPS works in explicit mode by default

Since i am sure i am not the only one who has been working with VS.Php and creating solutions with multiple projects inside, i decided to write a little blog article / tutorial on how to make debugging possible when using a multi-project solution.

The way my solutions are structured, each project is a specific module that can be used within the website i am building. One module could be called User_Accounts, another Website_Security, and so forth. Thus to include the functionality into a website, i only add the project to the solution.