ASP.NET
  Home arrow ASP.NET arrow Page 4 - Enhancing PHP Programming with the ASP.NET...
ASP Free Forums 
.NET  
ASP  
ASP Code  
ASP.NET  
ASP.NET Code  
BrainDump  
C#  
Code Examples  
Database  
Database Code  
IIS  
Microsoft Access  
MS SQL Server  
Silverlight  
Visual Basic.NET  
Windows Scripting  
Windows Security  
XML  
Mobile Linux 
App Generation ROI 
IBM® developerWorks 
ASP Web Hosting  
ASP.NET Web Hosting 
Windows Web Hosting
 
Weekly Newsletter
 
Developer Updates  
Free Website Content 
 RSS  Articles
 RSS  Forums
 RSS  All Feeds
Write For Us Get Paid 
Request Media Kit
Contact Us 
Site Map 
Privacy Policy 
Support 
 USERNAME
 
 PASSWORD
 
 
  >>> SIGN UP!  
  Lost Password? 
ASP.NET

Enhancing PHP Programming with the ASP.NET AJAX Framework
By: Xianzhong Zhu
  • Search For More Articles!
  • Disclaimer
  • Author Terms
  • Rating: 4 stars4 stars4 stars4 stars4 stars / 3
    2008-06-24

    Table of Contents:
  • Enhancing PHP Programming with the ASP.NET AJAX Framework
  • Introducing PHP for Microsoft AJAX Library
  • Download and set up PHP and the related web server
  • Use PHP class to define web service

  • Rate this Article: Poor Best 
      ADD THIS ARTICLE TO:
      Del.ici.ous Digg
      Blink Simpy
      Google Spurl
      Y! MyWeb Furl
    Email Me Similar Content When Posted
    Add Developer Shed Article Feed To Your Site
    Email Article To Friend
    Print Version Of Article
    PDF Version Of Article
     
     
    ADVERTISEMENT


    Enhancing PHP Programming with the ASP.NET AJAX Framework - Use PHP class to define web service


    (Page 4 of 4 )

    First, we should define a typical PHP class, named Animal, that bears the responsibility of serving as the OOP wrapper for the server side data in database form. However, for simplicity, we have not introduced the database (typically MySQL) related stuff. Here is the complete definition of the class,Animal (the file is Animal.php).

    // class Animal

    class Animal

    {

    //define a static array to hold data

    static $data = array();

    public $Name;

    public $Category;

    public $Color;

    //constructor

    public function __construct()

    {

    @list(

    $this->Name,

    $this->Category,

    $this->Color) = func_get_args();

    }

    //the main method to return animal related data

    public function GetAllAnimals()

    {

    if (count(Animal::$data) == 0)

    {

    //populate data into the array in hardcode mode

    Animal::$data[] = new Animal("Felix", "Cat", "Grey");

    Animal::$data[] = new Animal("Fido", "Dog", "Brown");

    Animal::$data[] = new Animal("Rover", "Dog", "Brown");

    Animal::$data[] = new Animal("Daisy", "Cow", "Black and White");

    Animal::$data[] = new Animal("Polly", "Parrot", "Green");

    }

    return Animal::$data;

    }

    }

    Since the above PHP class is simple, and what really matters does not lie herein, let's continue to delve into the PHP simulated web service class.

    For convenient discussion, we listed all the source code for the AnimalService class, as is shown below (the file is AnimalService.php).

    <?php

    require_once 'MSAjaxService.php';

    require_once 'Animal.php';


    class AnimalService extends MSAjaxService

    {

    function GetAllAnimals()

    {

    return Animal::GetAllAnimals();

    }

    }


    $service = new AnimalService();

    $service->ProcessRequest(array('Animal') );

    ?>

    We must refer to MSAjaxService.php because there is a class defined as MSAjaxService, which, in turn, invokes another class, called MSAjaxProxyGenerator (defined in the file as MSAjaxProxyGenerator.php), to finally generate the client-side web service proxy.

    Next, we must derive "AnimalService" from the base class, MSAjaxService. This is a must have in all similar conditions. Then, for brevity, we have defined a web method, called GetAllAnimals(). This invokes "Animal's" method, which is called GetAllAnimals(), and this returns an array of the Animal object.

    In the last part, we created an instance of theAnimalService web service and assigned it to the $service variable. After invoking the ProcessRequest() method of the instance and passing the seemingly peculiar array, Animal, as the only parameter, all the server side work is done.

    As you may have doped out, the secret is behind the ProcessRequest() method of the MSAjaxService class. This method bears many responsibilities, such as generating related client proxy, calling the json_decode() method to decode the posted data from the client side, calling the json_encode() method to encode the initial data in json mode so it can be transferred to the client side, etc.

    So, interested readers may do further research into the MSAjaxService.php file to track down more detailed information.

    In the next article, we'll switch to the client-side related programming.


    DISCLAIMER: The content provided in this article is not warranted or guaranteed by Developer Shed, Inc. The content provided is intended for entertainment and/or educational purposes in order to introduce to the reader key ideas, concepts, and/or product reviews. As such it is incumbent upon the reader to employ real-world tactics for security and implementation of best practices. We are not liable for any negative consequences that may result from implementing any information covered in our articles or tutorials. If this is a hardware review, it is not recommended to open and/or modify your hardware.

     

    ASP.NET ARTICLES

    - Develop Your First ASP.NET Website with Visu...
    - Run ASP.NET in Windows XP Home with Cassini ...
    - How to Test a Web Application
    - How to Add Code and Validation Controls to a...
    - Working in Source and Split Views to Build a...
    - How to Build a Web Form for a One-Page Web A...
    - How to Develop a One-Page Web Application
    - An ASP.NET Web Application in Action
    - Developing ASP.NET Web Applications
    - An Introduction to ASP.NET Web Programming
    - Introduction to the ADO.NET Entity Framework...
    - Completing an In-Text Advertising System und...
    - Programming an In-Text Advertising System un...
    - Building an In-Text Advertising System Under...
    - Developing a Mini ASP.NET AJAX Server Centri...





    © 2003-2009 by Developer Shed. All rights reserved. DS Cluster 3 Hosted by Hostway
    Stay green...Green IT