PHP
Joe Stagner
Microsoft Corporation
Joe.Stagner@Microsoft.com
http://www.JoeOn.net
February 9, 2008 Hyatt Regency Chicago, Illinois
MIX 07
Good Information
Does Not Displace
OTHER
Good Information.
A PHP Guy at Microsoft ?
Identity
MS Access MS Outlook BizTalk SQL Server MS LCS Integration
Server
Business
MS Excel PowerPoint SharePoint SQL RS ISA Server
Manager
Commerce
Live Meeting MS Visio Project Server MapPoint Tablet PC
Server
MS Starter
MS OneNote MS Word MS CRM MOM App Center
Kits
More Software Options from Microsoft
Active
IIS 6/7 Axapta Navision Info Bridge Media Center
Directory
Retail
ADAM MSMQ Great Plains WSH Info Card
Management
Small Windows
Authorization Windows
Business Unix DirectX WinFX
Manager Server 2003
Manager Services
MS Presentation
XML-WS Application MSN Hosted
Enterprise Foundation
WSE Center Search Controls
Reporting (Avalon)
• FASTCGI !
• PHP on IIS 6
– PHP Versions…. Why choose ?
• PHP on IIS 7
– New application context ?
PHP on Windows
• More Options
– Managed Code (.NET) PHP
• Phalanger http://php-compiler.net/
– Windows Applications
• NuSphere PHPDoc
• WinBinnder
• PHP-Gtk
Performance
• IIS
• CGI, ISAPI
• FastCGI
• Winabler
• Zend Platform
• Phalanger
• .NET Bridge
Integration Options
• The Windows File System
• SMTP
• X.500
• WDDX
• MS-SQL Server, ADO, ODBC
– What about the new auth provider?
– What about database’d session state
• XML
• LDAP
Integration Options
• Sockets
• RSS
• XML-RPC
• XML Web Services / SOAP
• PHP Extensibility Mechanisms
Integration Options
• Office
Integration Options
• WinDNA / COM
• Microsoft .NET
PHP and COM
• What’s COM ?
• PHP doesn’t REALLY speak COM.
• COM is the Lingua Franca of Windows
– VB
– C++ (Ours and many others)
– Delphi
– Python
– Perl
– Cobol
– Fortran
Creating a COM Object Instance
<?php
$myCOMObject =new
COM("COMObject.COMClass");
$myCOMObject->someMethod(“Some Argument”);
?>
Creating a COM Veneer
<?php
$myCOMObject =new
COM("COMObject.COMClass");
$myCOMObject->someMethod(“Some Argument”);
?>
.NET Framework and Tools
VB C++ C# J# …
Operating System
The Shared Source CLI
ECMA CLI
ILAsm Collections IO Security Runtime
Configuration Net ServiceProcess InteropServices
ILDbDump
Diagnostics Reflection Text Remoting
SN
Globalization Resources Threading Serialization
ILDAsm
MetaInfo Common Language Runtime
GC App Domain Loader JIT
PEVerify
MSIL Common Type System Class Loader
System.Web System.Windows.Forms
Services UI Design ComponentModel
Description HtmlControls
Discovery WebControls
Protocols System.Drawing
Caching Security Drawing2D Printing
Configuration SessionState Imaging Text
System.Data System.Xml
OleDb SqlClient XSLT Serialization
Common SQLTypes XPath
System
Collections IO Security Runtime
Configuration Net ServiceProcess InteropServices
Diagnostics Reflection Text Remoting
Globalization Resources Threading Serialization
Microsoft .NET
• NuSOAP
• PHP 5 – Native SOAP Extension
• ezSOAP
• PEAR::SOAP
My PHP Project Wish List
THANKS !