| ASP (VBScript)
 | PHP (v4.3+)
 | 
| General syntax | 
| 
ASP Comments, inline 
'my dog has fleas | 
PHP Comments, inline 
//my dog has fleas | 
| 
ASP Comments, block 
not available?
 | 
PHP Comments, block  | 
| 
ASP, Escaping quotes 
""
 "var text1=""<img src=\""blank.gif\"">"";"
 | 
PHP, Escaping quotes 
\" or use ' like javascript
 'var text1="<img src=\"blank.gif\">";';
 | 
| 
ASP Command termination 
None, but only one command per line.
 | 
PHP Command termination 
Each command must end with ; butmultiple commands per line are allowed.
 | 
| 
ASP Screen output 
response.write "hello"
 | 
PHP Screen output 
echo "hello";
 | 
| 
ASP Newline characters 
vbCrLf
 response.write "hello" & vbCrLf
 | 
PHP Newline characters 
"\n" (must be inside "", not '')
 echo "hello \n";
 | 
| 
ASP Variable Names 
Not case sensitive,so fName is the same as FNAME
 | 
PHP Variable Names 
Case sensitive AND must begin with $so $fName is NOT the same as $FNAME
 | 
| String Functions | 
| 
ASP String concatenation 
&
 fname=name1 & " " & name2
 emsg=emsg & "error!"
 | 
PHP String concatenation 
. and .=
 $fname=$name1." ".$name2;
 $emsg.="error!";
 | 
| 
ASP, Change case 
LCase(), UCase()
 lowerName=LCase(chatName)
 upperName=UCase(chatName)
 | 
PHP, Change case 
strtolower(), strtoupper()
 $lowerName=strtolower($chatName);
 $upperName=strtoupper($chatName);
 | 
| 
ASP String length 
Len()
 n=Len(chatName)
 
 | 
PHP String length 
strlen()
 $n=strlen($chatName);
 
 | 
| 
ASP, Trim whitespace 
Trim()
 temp=Trim(xpage)
 
 | 
PHP, Trim whitespace 
trim() and also ltrim(), rtrim()
 $temp=trim($xpage);
 
 | 
| 
ASP String sections 
Left(), Right(), Mid() Left("abcdef",3) result = "abc"
 Right("abcdef",2)
 result = "ef"
 Mid("abcdef",3)
 result = "cdef"
 Mid("abcdef",2,4)
 result = "bcde"
 | 
PHP String sections 
substr() substr("abcdef",0,3); result = "abc" substr("abcdef",-2);
 result = "ef" substr("abcdef",2);
 result = "cdef" substr("abcdef",1,4);
 result = "bcde"
 | 
| 
ASP String search forward, reverse 
Instr(), InstrRev() x=Instr("abcdef","de")
 x=4
 x=InstrRev("alabama","a")
 x=7
 | 
PHP String search forward, reverse 
strpos(), strrpos() $x=strpos("abcdef","de"); x=3 $x=strrpos("alabama","a"); x=6
 | 
| 
ASP String replace 
Replace(string exp,search,replace)temp=Replace(temp,"orange","apple")
 temp=Replace(temp,"'","\'")
 temp=Replace(temp,"""","\""")
 
 | 
PHP String replace 
str_replace(search,replace,string exp)
 $temp=str_replace("orange","apple",$temp);
 $temp=str_replace("'","\\'",$temp);
 $temp=str_replace("\"","\\\"",$temp);
 
 | 
| 
ASP, split a string into an array 
Split() temp="cows,horses,chickens"
 farm=Split(temp,",",-1,1)
 x=farm(0)
 | 
PHP, split a string into an array 
explode() $temp="cows,horses,chickens"; $farm=explode(",",$temp);
 $x=$farm[0];
 | 
| 
ASP, convert ASCII to String 
x=Chr(65) x="A"
 | 
PHP, convert ASCII to String 
$x=chr(65); x="A"
 | 
| 
ASP, convert String to ASCII 
x=Asc("A") x=65
 | 
PHP, convert String to ASCII 
$x=ord("A") x=65
 | 
| Control Structures | 
| 
ASP, if statements 
if x=100 then x=x+5
 elseif x<200 then
 x=x+2
 else
 x=x+1
 end if
 | 
PHP, if statements 
if ($x==100) { $x=$x+5; } else if ($x<200) { $x=$x+2; } else { $x++; } | 
| 
ASP, for loops 
for x=0 to 100 step 2 if x>p then exit for
 next
 | 
PHP, for loops 
for ($x=0; $x<=100; $x+=2) { if ($x>$p) {break;} } | 
| 
ASP, while loops 
do while x<100 x=x+1 if x>p then exit do
 loop
 | 
PHP, while loops 
while ($x<100) { $x++; if ($x>$p) {break;} } | 
| 
ASP, branching 
select case chartName case "TopSales"
 theTitle="Best Sellers"
 theClass="S"
 case "TopSingles"
 theTitle="Singles Chart"
 theClass="S"
 case "TopAlbums"
 theTitle="Album Chart"
 theClass="A"
 case else
 theTitle="Not Found"
 end select
 | 
PHP, branching 
switch ($chartName) { case "TopSales":
 $theTitle="Best Sellers";
 $theClass="S";
 break;
 case "TopSingles":
 $theTitle="Singles Chart";
 $theClass="S";
 break;
 case "TopAlbums":
 $theTitle="Album Chart";
 $theClass="A";
 break;
 default:
 $theTitle="Not Found";
 }
 | 
| 
ASP functions 
Function myFunction(x) myFunction = x*16 'Return value
 End Function
 | 
PHP functions 
function myFunction($x) { return $x*16; //Return value } | 
| HTTP Environment | 
| 
ASP, Server variables 
Request.ServerVariables("SERVER_NAME") Request.ServerVariables("SCRIPT_NAME")
 Request.ServerVariables("HTTP_USER_AGENT")
 Request.ServerVariables("REMOTE_ADDR")
 Request.ServerVariables("HTTP_REFERER")
 | 
PHP, Server variables 
$_SERVER["HTTP_HOST"]; $_SERVER["PHP_SELF"];
 $_SERVER["HTTP_USER_AGENT"];
 $_SERVER["REMOTE_ADDR"];
 @$_SERVER["HTTP_REFERER"];
 @ = ignore errors
 | 
| 
ASP Page redirects 
Response.redirect("wrong_link.htm")
 | 
PHP Page redirects 
header("Location: wrong_link.htm");
 | 
| 
ASP, GET and POST variables 
Request.QueryString("chat")Request.Form("username")
 
 | 
PHP, GET and POST variables 
@$_GET["chat"];       @ = ignore errors@$_POST["username"];
 
 | 
| 
ASP, prevent page caching 
Response.CacheControl="no-cache"Response.AddHeader "pragma","no-cache"
 
 | 
PHP, prevent page caching 
header("Cache-Control: no-store, no-cache");header("Pragma: no-cache");
 
 | 
| 
ASP, Limit script execution time, in seconds 
Server.ScriptTimeout(240)
 | 
PHP, Limit script execution time, in seconds 
set_time_limit(240);
 | 
| 
ASP, Timing script execution 
s_t=timer ...ASP script to be timed... duration=timer-s_t
 response.write duration &" seconds"
 | 
PHP, Timing script execution 
$s_t=microtime(); ...PHP script to be timed... $duration=microtime_diff($s_t,microtime());
 $duration=sprintf("%0.3f",$duration);
 echo $duration." seconds"; //required function
 function microtime_diff($a,$b) {
 list($a_dec,$a_sec)=explode(" ",$a);
 list($b_dec,$b_sec)=explode(" ",$b);
 return $b_sec-$a_sec+$b_dec-$a_dec;
 }
 | 
| File System Functions | 
| 
ASP, create a file system object (second line is wrapped) 
'Required for all file system functionsfileObj=Server.CreateObject
 ("Scripting.FileSystemObject")
 
 | 
PHP, create a file system object 
Not necessary in PHP
 | 
| 
ASP, check if a file exists 
pFile="data.txt"fileObj.FileExists(Server.MapPath(pFile))
 
 | 
PHP, check if a file exists 
$pFile="data.txt";file_exists($pFile);
 
 | 
| 
ASP, Read a text file 
pFile="data.txt" xPage=fileObj.GetFile(Server.MapPath(pFile))
 xSize=xPage.Size 'Get size of file in bytes
 xPage=fileObj.OpenTextFile(Server.MapPath(pFile))
 temp=xPage.Read(xSize) 'Read file
 linkPage.Close
 | 
PHP, Read a text file 
$pFile="data.txt"; $temp=file_get_contents($pFile); //Read file
 | 
| Time and Date Functions | 
| 
ASP, Server Time or Date 
Now, Date, Time
 | 
PHP, Server Time or Date 
date()
 | 
| 
ASP, Date format (default) 
Now = 12/8/2007 11:29:27 AMDate = 12/8/2007
 Time = 11:29:27 AM
 
 Various ASP functions extract date parts:
 
 Month(Date) = 12
 MonthName(Month(Date)) = December
 Day(Date) = 8
 WeekdayName(Weekday(Date)) = Saturday
 WeekdayName(Weekday(Date),False) = Sat
 
 | 
PHP, Date format 
There is no default format in PHP.The date() function is formatted using codes:
 
 date("n/j/Y g:i:s A") = 12/8/2007 11:29:27 AM
 
 date("n") = 12
 date("F") = December
 date("j") = 8
 date("l") = Saturday
 date("D") = Sat
 
 | 
| Numeric Functions | 
| 
ASP, convert decimal to integer 
Int()
 n=Int(x)
 
 | 
PHP, convert decimal to integer 
floor()
 $n=floor($x);
 
 | 
| 
ASP, determine if a value is numeric 
IsNumeric()
 if IsNumeric(n) then ...
 | 
PHP, determine if a value is numeric 
is_numeric()
 if (is_numeric($num)) {...}
 
 | 
| 
ASP, modulus function 
x mod y
 | 
PHP, modulus function 
$x % $y
 |