PHP Support for SQL Server LocalDb and SQL Server AlwaysOn Clusters
2012 marks the fifth year since Microsoft started courting PHP developers. The popular language can be found in everything from their entry level IDE WebMatrix to the high-end cloud platform Windows Azure. Known as “Microsoft Drivers 3.0 for PHP for SQL Server”, this release focuses primarily on new features for SQL Server 2012.
For small installations there is the LocalDB support, a lightweight version of SQL Server that is automatically started when an application attempts to access a database file. Since PHP is primarily a server-side language, LocalDB will be mostly of interest to programmers who don’t want a full copy of SQL Server constantly running on their development machine.
On the opposite side of the spectrum is support for “AlwaysOn” clusters. This release includes support for Application Intents, which allow the connection to be rerouted to a read-only server if appropriate, and multiple-subnet failovers. The latter was designed for fail-over servers that exist in physically separate regions of the world.
Finally, the PHP drivers include support for buffering query results on the client. By storing the rows in memory, you can reduce the “subsequent round-trips to the server usually required to fetch the resultset row-by-row”.
Microsoft Drivers 3.0 for SQL Server for PHP is offered on Microsoft’s download center and the documentation is on MSDN. The source code is offered on CodePlex under an Apache License. Currently it is only available for PHP on Windows.