ASP 经典 CLng 函数 - 转换为 PHP
ASP classic CLng function - convert to PHP
我有一个使用 ASP 经典创建的旧站点,现在我鼓起勇气将其转换为 PHP。必须说我不是这两种语言的专家。
有一个简单的功能让我发疯。它以我以前从未见过的方式使用 CLng,我在 PHP.
中找不到类似的方法
这是ASP经典中的函数:
Function TransferDecode(ByRef Source)
Dim C, I, P, S, K
C = Len(Source) / 2
TransferDecode = ""
For I = 0 to C - 1
P = I * 2 + 1
S = Mid(Source, P, 2)
K = CLng("&H" & S)
TransferDecode = TransferDecode & Chr(K)
Next
End Function
这里是我(uncessefull)转换为 PHP 的尝试:
function transferDecode($source) {
$r = '';
$c = strlen($source) / 2;
for ($i = 0; $i <= $c - 1; $i++) {
$p = $i * 2 + 1;
$s = substr($source, $p, 2);
$k = '&H'.$s;
$r .= chr((int)$k);
}
return $r;
}
谁能给我解释一下 "CLng("&H" & S)" 的作用? PHP有没有类似的CLng方法?
谢谢!
我会尝试这样的事情:
$r .= chr(intval($s, 16));
注意:变量$k
根本没有用到
此外,vbscript 中的字符串是从 1 开始的,而在 php 中是从 0 开始的,因此 $p
应该计算为 $p = $i * 2;
我有一个使用 ASP 经典创建的旧站点,现在我鼓起勇气将其转换为 PHP。必须说我不是这两种语言的专家。
有一个简单的功能让我发疯。它以我以前从未见过的方式使用 CLng,我在 PHP.
中找不到类似的方法这是ASP经典中的函数:
Function TransferDecode(ByRef Source)
Dim C, I, P, S, K
C = Len(Source) / 2
TransferDecode = ""
For I = 0 to C - 1
P = I * 2 + 1
S = Mid(Source, P, 2)
K = CLng("&H" & S)
TransferDecode = TransferDecode & Chr(K)
Next
End Function
这里是我(uncessefull)转换为 PHP 的尝试:
function transferDecode($source) {
$r = '';
$c = strlen($source) / 2;
for ($i = 0; $i <= $c - 1; $i++) {
$p = $i * 2 + 1;
$s = substr($source, $p, 2);
$k = '&H'.$s;
$r .= chr((int)$k);
}
return $r;
}
谁能给我解释一下 "CLng("&H" & S)" 的作用? PHP有没有类似的CLng方法?
谢谢!
我会尝试这样的事情:
$r .= chr(intval($s, 16));
注意:变量$k
根本没有用到
此外,vbscript 中的字符串是从 1 开始的,而在 php 中是从 0 开始的,因此 $p
应该计算为 $p = $i * 2;