Привет! Помогите, пожалуйста, переписать функцию с js на php или найти ошибку в том, как переписал её я.
Функция такая:
function io(ej, Ka) {
var gd = Ka;
var as = ej;
return function() {
var cZ = as;
var K2 = gd;
as = K2;
cZ = cZ ^ (cZ << 23);
cZ = cZ ^ (cZ >> 17);
cZ = cZ ^ K2;
cZ = cZ ^ (K2 >> 26);
gd = cZ;
return (as + gd) % 4294967296;
};
}
И её вызов вот тут:
var pJ = io(612538604, OG);
var SI = [];
var NX = 0;
for (; NX < 50;) {
SI.push(pJ() & 255);
NX = NX + 1;
}
Я переписал и вызываю вот так, но правильно отрабатывает только первая итерация цикла:
Моя попытка
function io($ej, $Ka) {
$gd = $Ka;
$as = $ej;
return function() use (&$gd, &$as) {
$cZ = $as;
$K2 = $gd;
$as = $K2;
$cZ = $cZ ^ $cZ << 23;
$cZ = $cZ ^ $cZ >> 17;
$cZ = $cZ ^ $K2;
$cZ = $cZ ^ $K2 >> 26;
$gd = $cZ;
return ($as + $gd) % 4294967296;
};
}
$SI = [];
$NX = 0;
$pJ = io(612538604, $OG);
for (; $NX < 50;) {
array_push($SI, $pJ() & 255);
$NX = $NX + 1;
}