Another step in Microsoft's goal for better interoperability. They have released a PHP Toolkit for ADO.Net Data Services. As its name suggests, the toolkit enables PHP developers to connect and leverage the various services offered in ADO.Net Data Services.

ADO.Net Data Services are relatively new to the .Net Framework, enabling a number of different data sources -- relational databases, XML files -- to be exposed via a REST-style interface.

How it Works

The Toolkit includes a tool called PHPDataSvcUtil, which connects to the ADO.Net Data Services, generating a proxy class for each EntityType. These class definitions are then used by the PHP client application to access data through the Data Services, including the ability to add, edit delete or browse records and connect to the service.

PHPToolkit_ADONet.jpg

PHP Toolkit Architecture
 

The Toolkit isn't tied to an operating system, so it can be installed on Windows or Linux. It requires the PHP extensions for XML, XSL and CURL be installed.

Protocol and Authentication Support

Both the JSON and AtomPub protocols are supported which means the toolkit can be used with Windows Azure. It does not however, support the Azure authentication out of the box, so some work is required there. Out of the box, basic authentication is supported and it can be modified to support other schemes.

ADO.Net Data Services are supported in Visual Studio 2008 SP1 and Visual Studio 2010 including both consuming and creating data services.

Microsoft and PHP

This is just one of a number of open source projects that Microsoft is supporting in their Interoperability Bridges and Lab Center. Other PHP projects include an SDK for Azure, PHP Samples for Silverlight, Web Slices and Accelerators and a SQL CRUD Application Wizard.

The PHP Toolkit was developed by a company named PersistentSystems Ltd and was funded by Microsoft.  Pick up your copy of the PHP Toolkit on Codeplex now.