At the Intersection of PHP and Microsoft
<Tap, tap…> Is this thing on?
Hi. My name is Brian Swan. I’m a PHP fan AND I work at Microsoft. Not too long ago, that self-description might have triggered an identity crisis, but recently the intersection between PHP and Microsoft has become rich enough that I won’t need to worry about finding a therapist any time soon! I became interested in PHP a few years ago when I was preparing for a job interview - I was hoping to impress my prospective employer with how quickly I could learn something new. Clearly, I chose the right language. I was amazed at how easy it was to go from zero knowlege about PHP to getting a web application up and running. And, I've always been interested in the rich suite of technologies that Microsoft offers. Since then, I've continued to have fun increasing my knowlege about both PHP and Microsoft technologies, and have been keenly interested in the growing intersection of the two.
In the last few years (and even in the last few months) Microsoft has taken some big strides toward making its technologies easily accessible to PHP developers. Just to name a few, consider the IIS improvements for PHP apps, the SQL Server Driver for PHP, the Toolkit for PHP with ADO.NET Data Services, the Azure SDK for PHP, the Web Platform Installer, the WinCache Extension 1.0 for PHP… the list goes on. For many of those projects, the source code is freely available; in the case of the WinCache Extension, the source code has been contributed to PECL.
I, for one, am happy to see Microsoft deliver on its commitment to interoperability with PHP, and I’m looking forward to seeing what’s next. In this blog, I plan to explore the growing intersection between PHP and Microsoft by diving into the recent (and not-so-recent) releases Microsoft has made in this space. My focus will be on providing technical content that PHP developers can use to more easily take advantage of these releases. I also hope to drive feedback from readers about these projects back to the development teams in an effort to increase quality and maintain focus on features/scenarios that are important to the PHP community. In the next few weeks, I’m considering the following topics:
· Getting Started with the SQL Server Driver for PHP.
· mssql and sqlsrv: What’s the difference?
· Avoiding SQL Injection (best practices).
· Getting Started with PHP and Azure.
· Getting Started with the SQL Server Migration Assistant.
Of course, I’d like to hear your input about these topics, and I’m always interested in suggestions for new topics. Part of what is exciting about starting this blog is the opportunity for me to learn as I go. So, if you have questions about using PHP with any Microsoft technology, just let me know. I’ll do some homework and hopefully be able to provide some helpful code, tips, or tricks.
Look for my first real post soon. Thanks!
Share this on Twitter
Hi. My name is Tim. I'm not really a PHP fan but my job requires it. I grew up on Microsoft web technologies when ASP ruled, and was poised on the brink of learning .NET when a layoff and relocation forced me to move to PHP. I miss having an MSDN subscription and going to TechEd conventions.
I primarily develop PHP-driven internal web tools for the group at my new company, and finally was able to move our tools to IIS-based Windows web servers, so I'm somewhat back into the Microsoft world. I'm a little stoked that MS is beginning to support PHP; my heart and soul is in web development but I'll never have the time to learn .NET tech...at least I can jump onto this rope bridge across the PHP-MS canyon now. I hope you keep blogging for guys like me. :)
A long time ago MS had a free downloadable MSDE that we used for small sites...is there a similar free DB based on later MSSQL technology now? How does PHP interface to it? Might be a good addition to your upcoming blog list...
This is something I definitely plan to cover is a post soon (maybe sooner rather than later now :-)). In the meantime, I think what you are looking for is SQL Server Express. You can download the 2008 version here: http://www.microsoft.com/downloads/details.aspx?FamilyID=7522a683-4cb2-454e-b908-e805e9bd4e28&DisplayLang=en and the 2005 version here http://www.microsoft.com/downloads/details.aspx?FamilyID=220549B5-0B07-4448-8848-DCC397514B41&displaylang=en. Both are free downloads. Optionally, you can use the Web Platform Installer, which will install PHP, install SQL Server Express, and configure IIS. You can download WPI here: http://www.microsoft.com/web/downloads/platform.aspx.
As for accessing SQL Server from PHP, you'll need the SQL Server Driver for PHP, which is available here: http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=ccdf728b-1ea0-48a8-a84a-5052214caad9. The documentation is here http://msdn.microsoft.com/en-us/library/ee229548(SQL.10).aspx, or you can start with this whitepaper: http://msdn.microsoft.com/en-us/library/cc793139(SQL.90).aspx.
I will also get a post up about this soon. Thanks for the suggestion.
I'm a Technical Evangelist at Microsoft focused on database technology and I also have a background doing PHP development. Having people like you with a background in Microsoft technology that are working on PHP is really important for helping us bridge the gap.
In addition to the great resources that Brian pointed out it’s interesting to note that SQL Server Web Edition http://www.microsoft.com/sqlserver/2008/en/us/web.aspx has all of the same features as Express without some of the resource constraints and is targeted directly at the web workload. This is an excellent option for your hosters or a dedicated machine.