2011-11-06 61 views
0

我在ASP代碼沒有expreience這個功能我無法變回PHP的一個如何在ASP更改代碼生成功能爲PHP語言

function MELLICODE(CODE: STRING): Boolean; 
var a,b,c : integer; 
begin 
    A:=strtoint(CODE[10]); 
    B:=strtoint(CODE[1])*10 + strtoint(CODE[2])*9 + 
strtoint(CODE[3])*8 + strtoint(CODE[4])*7 + strtoint(CODE[5])*6 + 
strtoint(CODE[6])*5 + strtoint(CODE[7])*4 + strtoint(CODE[8])*3 + 
strtoint(CODE[9])*2; 
    C:=b-(b div 11)*11; 
    If (c=0) and (a=c) then 
     MELLICODE:=TRUE 
    else if (c=1) and (a=1) then 
     MELLICODE:=TRUE 
    else if (c>1) and (a=abs(c-11)) then 
     MELLICODE:=TRUE 
    else 
     MELLICODE:=FALSE; 

這是一個代碼生成器,它會產生一個有10個數字的代碼。

我知道這是問很多,但我嘗試了很多,但無法理解語言。

回答

1

我還沒有使用ASP多年。我相信它不完整,但可以幫助你。

function mellicode($code) { 
    $a = intval($code[9]); 
    $b = (intval($code[0]) * 10) + (intval($code[1]) * 9) + (intval($code[2]) * 8) + (intval($code[3]) * 7) + (intval($code[4]) * 6) + (intval($code[5]) * 5) + (intval($code[6]) * 4) + (intval($code[7]) * 3) + (intval($code[8]) * 2); 
    $c = $b - ($b % 11)*11; 

    if($c == 0 AND $a == $c) 
     return TRUE; 
    elseif($c == 1 AND $a == 1) 
     return TRUE; 
    elseif($c > 1 AND $a == abs($c - 11)) 
     return TRUE; 
    else 
     return FALSE; 
}