Version: 1.0
Type: Class
Category: Other
License: GNU General Public License
Description: This is a simulation of many of the ASP objects, using PHP classes. Unfortunately, not every object nor property / method could be simulated. For the most part, many ASP properties could only be simulated as Methods.
Below Are The Objects I could Simulate:
Response Object
Buffer(boolean)
CacheControl(boolean)
ContentType(string)
Expires(date)
Flush()
IsClientConnected()
Redirect(url)
Write(string)
Request
Form
QueryString
ServerVariables
Form (Instantiated Through Request Object)
Count
Index
Item
Key
QueryString (Instantiated Through Request Object)
Count
Index
Item
Key
Server
CreateObject(class)
HTMLEncode(string)
MapPath(filename)
ScriptTimeout(seconds)
URLEncode(string)
Session
Value(variable name)
SessionID[index]
Contents[variable name]
Index[index]
Abandon()
Please Note:
The objects have to be invoked with PHP rules.
Finally:
Feel free to update this library, hence that I only created this library as a learning experience. This library helped me comfortably port from being an ASP developer to a PHP programmer.
<?php /* CONTACT ME AT [email protected] IF YOU WOULD LIKE TO ELABORATE ON THIS COMPONENT */ Class Response { // Buffer Method function Buffer($blnValue){ if($blnValue){ ob_start(); } else{ ob_end_flush(); } } // CacheControl Method function CacheControl($blnValue){ switch($blnValue){ case 0: header ("Pragma: no-cache"); break; case 1: break; } } // ContentType Method function ContentType($strValue){ header("Content-Type: $strValue"); } // Expires Method function Expires($strValue){ if(checkdate($strValue)){ header ("Expires: $strValue"); } else{ return 1; } } // Flush Method function flush(){ flush(); } // IsClientConnected Method function IsClientConnected(){ if(connection_aborted()){ return true; } else{ return false; } } // Redirect Method function Redirect($strURL){ header("Location: $strURL"); exit; } // Write Method function Write($strExpression){ print $strExpression; } } // Initialize Response Object $Response = New Response; Class Form { var $Count; var $Index; var $Item; var $Key; // Form Constructor function Form(){ Global $HTTP_POST_VARS; if(isset($HTTP_POST_VARS)){ # Set Item Property Associative Array $this->Item = $HTTP_POST_VARS; $FORM = $HTTP_POST_VARS; $iCount = 0; foreach($FORM As $F){ # Set Index Property Array $this->Index[$iCount] = $F; $iCount++; } # Set Keys Property Array $this->Key = array_keys($FORM); # Set Count Property $this->Count = Count($FORM); } } } Class QueryString { var $Count; var $Index; var $Item; var $Key; // QueryString Constructor function QueryString(){ Global $HTTP_GET_VARS; if(isset($HTTP_GET_VARS)){ # Set Item Property Associative Array $this->Item = $HTTP_GET_VARS; $QS = $HTTP_GET_VARS; $iCount = 0; foreach($QS As $Q){ # Set Index Property Array $this->Index[$iCount] = $Q; $iCount++; } # Set Keys Property Array $this->Key = array_keys($QS); # Set Count Property $this->Count = Count($QS); } } } class Request { var $Form; var $QueryString; var $ServerVariables; // Request Constructor function Request(){ Global $HTTP_SERVER_VARS; $this->Form = new Form; $this->QueryString = new QueryString; $this->ServerVariables = $HTTP_SERVER_VARS; } } // Initialize Request Object $Request = new Request; class Server { # CreateObject Method function CreateObject($strClassString){ $oCOM = new COM($strClassString); return $oCOM; } # HTMLEncode Method function HTMLEncode($strHTMLExpression){ return htmlentities($strHTMLExpression); } # MapPath Method function MapPath($strFileName){ return realpath($strFileName); } # ScriptTimeout Method function ScriptTimeout($iSeconds){ return set_time_limit($iSeconds); } #URLEncode Method function URLEncode($strURLExpression){ return urlencode($strURLExpression); } } // Initialize Server Object $Server = new Server; class sessionVar { var $SessionID; var $Contents; var $Count; var $Index; // sessionVar Constructor function sessionVar(){ session_start(); } # Value Method function Value($varName){ static $iCount; if(isset($iCount) == false){ $iCount = 0; } $this->Contents[$varName] = session_register($varName); $this->SessionID[$varName] = session_id($varName); $this->Index[$iCount] = session_register($varName); $iCount++; $this->Count = $iCount; } # Abandon Method function Abandon(){ session_unset(); } } $Session = new sessionVar; ?>