Microsoft для PHP программистов
Не секрет, что у Microsoft есть технология ASP.NET (и смежные ASP.NET MVC, ASP.NET AJAX, AJAX Control Toolkit и т.д.), которая является стандартом де-факто для .net ориентированных разработчиков. В то же время количество PHP разработчиков также велико, поэтому было бы странно игнорировать такую большую аудиторию.
В данной статье представлен материал, который, надеюсь, поможет PHP разработчикам лучше интегрировать свои приложения с Microsoft технологиями и продуктами (если, конечно, в этом есть необходимость).
В первую очередь стоит почитать статью “Migrating from PHP to ASP.NET”, где представлена информация о сравнении архитектур, возможностей, синтаксиса, общих задач и принципов кэширования, а также описаны дальнейшие шаги по изучению новой платформы.
Следующим этапом может быть изучение курса “Learn ASP.NET: for PHP Developers” из бесплатной образовательной программы Rump Up! Курс содержит теоретический материал, лабораторные работы и слайдкасты:
- Developing Web Applications – Tooling
- ASP.NET Syntax for PHP Developers
- Programming WebForms
- Web Configuration
- Programming Web Events
- State Management
Windows Azure SDK for PHP
Windows Azure SDK for PHP позволяет использовать возможности Windows Azure в PHP приложениях.
PHPAzure – это open source проект, предоставляющий software development kit для Windows Azure и Windows Azure Storage – Blobs, Tables и Queues.
Возможности:
- PHP классы для Windows Azure Blobs, Tables и Queues (для CRUD операций)
- классы для HTTP transport, AuthN/AuthZ, REST и Error Management
- поддержка логгирования", управляемости
- поддержка хранения PHP сессий в Azure Table Storage
Windows Azure SDK для PHP предоставляет доступ к Windows Azure, а также удобные интерфейсы для работы с REST/XML в виде простого PHP API.
Рисунок 1. Архитектура приложения
Рисунок 2. Сценарий по разворачиванию приложения
Сайт проекта - http://phpazure.codeplex.com/.
Toolkit for PHP with ADO.NET Data Services
Toolkit for PHP with ADO.NET Data Services позволяет PHP разработчикам работать к сервисами, которые разработаны с помощью ADO.NET Data Services. Цель – предоставить похожую функциональность для PHP разработчиков, как это сделано в .NET библиотеке.
Почитайте "Interoperability Bridges and Labs page" и "A new bridge for PHP developers to .NET through REST: Toolkit for PHP with ADO.NET Data Services" для получения более детальной информации.
Рисунок 3. Архитектура приложения
Сайт проекта: http://phpdataservices.codeplex.com/
Также есть новый проект – OData SDK for PHP, который позволяет работать с сервисами через протокол OData. Детальная информация о протоколе можно найти на сайте http://www.odata.org.
Возможности:
- поддержка всех возможностей OData
- поддержка Azure аутентификации
- поддержка коммандной строки
- примеры и документация
Сайт проекта: http://odataphp.codeplex.com/
PHP for Microsoft AJAX Library
Сайт проекта: http://phpmsajax.codeplex.com/
Движемся дальше и следующим будет проект PHP for Microsoft AJAX Library. Данный проект содержит небольшое количество PHP файлов, с помощью которых можно работать с библиотекой Microsoft AJAX (которую можно скачать здесь) в PHP приложениях. Следующие релизы будут содержать локализацию и глобализацию, debug и release скрипты и другие возможности библиотеки.
Для того, чтобы использовать Microsoft AJAX в PHP приложениях, необходимо выполнить такие действия:
- Скачать последний релиз PHP for Microsoft AJAX и распаковать локально.
- Скачать библиотеку Microsoft AJAX (http://ajax.asp.net/).
- В PHP коде включить MSAjaxService.php файл.
- В клиентском коде добавить MicrosoftAjax.js.
“Hello, World” пример будет выглядеть следующим образом:
HelloService.php:
<?php require_once '../../dist/MSAjaxService.php'; class HelloService extends MSAjaxService { function SayHello($name) { return 'Hello, ' . $name . '!'; } } $h = new HelloService(); $h->ProcessRequest(); ?>
index.html:
<html> <head> <title>Hello, World!</title> <script type="text/javascript" src="../../MicrosoftAjaxLibrary/MicrosoftAjax.js"></script> <script type="text/javascript" src="HelloService.php/js"></script> </head> <body> Name: <input id="name" type="text" /> <input type="button" value="Say Hello" onclick="button_click(); return false;" /> <br /> Response from server: <span id="response"></span> </body> <script type="text/javascript"> function button_click() { HelloService.SayHello($get('name').value, function (result) { $get('response').innerHTML = result; }); } </script> </html>
VS.Php for Visual Studio
VS.Php – это PHP IDE на основе Visual Studio. C помощью VS.Php можно проектировать, разрабатывать, отлаживать и разворачивать PHP приложения с помощью Visual Studio IDE.
Уникальные возможности (key features):
- интеграция с IIS7
- интеграция с Silverlight и возможность отладки связки PHP + Silverlight
- отладка PHP и JavaScript
- поддержка PHP 5.3
Сайт проекта: http://visualstudiogallery.msdn.microsoft.com/ru-RU/F5CFBE65-D843-4C96-8F24-2C169676504C
Этот продукт доступен в трех редакциях:
- VS.Php for Visual Studio 2010
- VS.Php for Visual Studio 2008
- VS.Php for Visual Studio 2005
Скриншоты:
PHP on Windows Training Kit (March 2010)
PHP on Windows Training Kit включает технический материал, включая демо и лабораторные работы для изучения процесса создания PHP приложений с использованием Windows, IIS 7 и SQL Server 2008.
Скачать можно по ссылке SQL Server Driver for PHP.
Скачать можно по ссылке: драйвер SQL Server для PHP 2.0. Драйвер обеспечивает поддержку PHP Data Objects. Подробная информация в блоге Microsoft Interoperability.
PHP on Windows
Портал PHP on Windows содержит полную информацию для тех, кто хочет использовать PHP на Windows.
Сайт проекта: http://php.iis.net/
Дополнительные ссылки
- Webcasts, videos, virtual labs and podcasts - http://www.microsoft.com/events/series/azure.aspx
- Azure training kit (including PHP samples) - http://www.microsoft.com/azure/trainingkit.mspx
- Other Azure SDK's http://www.microsoft.com/azure/sdk.mspx
- How do I.... videos - http://msdn.microsoft.com/en-us/azure/dd439432.aspx
- PHP on Windows Training Kit - PHP-ASP.NET Migration Forum
- PHP4 или ASP.NET - что лучше
- ASP.NET vs. PHP
Если у вас есть дополнительные ссылки по теме – просьба ими поделиться.
Спасибо за внимание!
Компании из статьи
Microsoft Украина | Украинское подразделение компании Microsoft. |