first commit
This commit is contained in:
93
vendor/khanamiryan/qrcode-detector-decoder/lib/common/customFunctions.php
vendored
Normal file
93
vendor/khanamiryan/qrcode-detector-decoder/lib/common/customFunctions.php
vendored
Normal file
@@ -0,0 +1,93 @@
|
||||
<?php
|
||||
function arraycopy($srcArray,$srcPos,$destArray, $destPos, $length){//System.arraycopy
|
||||
|
||||
$srcArrayToCopy = array_slice($srcArray,$srcPos,$length);
|
||||
array_splice($destArray,$destPos,$length,$srcArrayToCopy);
|
||||
return $destArray;
|
||||
}
|
||||
|
||||
|
||||
function overflow32($value) {//There is no need to overflow 64 bits to 32 bit
|
||||
return $value;
|
||||
}
|
||||
|
||||
function hashCode( $s )
|
||||
{
|
||||
$h = 0;
|
||||
$len = strlen($s);
|
||||
for($i = 0; $i < $len; $i++)
|
||||
{
|
||||
$h = overflow32(31 * $h + ord($s[$i]));
|
||||
}
|
||||
|
||||
return $h;
|
||||
}
|
||||
|
||||
|
||||
function numberOfTrailingZeros($i) {
|
||||
if ($i == 0) return 32;
|
||||
$num = 0;
|
||||
while (($i & 1) == 0) {
|
||||
$i >>= 1;
|
||||
$num++;
|
||||
}
|
||||
return $num;
|
||||
}
|
||||
function intval32bits($value)
|
||||
{
|
||||
$value = ($value & 0xFFFFFFFF);
|
||||
|
||||
if ($value & 0x80000000)
|
||||
$value = -((~$value & 0xFFFFFFFF) + 1);
|
||||
|
||||
return $value;
|
||||
}
|
||||
|
||||
function uRShift($a, $b)
|
||||
{
|
||||
|
||||
if($b == 0) return $a;
|
||||
return ($a >> $b) & ~(1<<(8*PHP_INT_SIZE-1)>>($b-1));
|
||||
}
|
||||
/*
|
||||
function sdvig3($num,$count=1){//>>> 32 bit
|
||||
$s = decbin($num);
|
||||
|
||||
$sarray = str_split($s,1);
|
||||
$sarray = array_slice($sarray,-32);//32bit
|
||||
|
||||
for($i=0;$i<=1;$i++) {
|
||||
array_pop($sarray);
|
||||
array_unshift($sarray, '0');
|
||||
}
|
||||
return bindec(implode($sarray));
|
||||
}
|
||||
*/
|
||||
|
||||
function sdvig3($a,$b) {
|
||||
|
||||
if ($a >= 0) {
|
||||
return bindec(decbin($a>>$b)); //simply right shift for positive number
|
||||
}
|
||||
|
||||
$bin = decbin($a>>$b);
|
||||
|
||||
$bin = substr($bin, $b); // zero fill on the left side
|
||||
|
||||
$o = bindec($bin);
|
||||
return $o;
|
||||
}
|
||||
|
||||
function floatToIntBits($float_val)
|
||||
{
|
||||
$int = unpack('i', pack('f', $float_val));
|
||||
return $int[1];
|
||||
}
|
||||
|
||||
function fill_array($index,$count,$value){
|
||||
if($count<=0){
|
||||
return array(0);
|
||||
}else {
|
||||
return array_fill($index, $count, $value);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user