$npad = $npad/$this->bytesString;
$length = count($ords);
$ords[] = 0x80; // append the "1" bit followed by 7 0's
- $ords = array_pad($ords,ceil(($length+32/$this->bytesString)/$npad)*$npad-32/$this->bytesString,0);
+ $pad = ceil(($length+32/$this->bytesString)/$npad)*$npad-32/$this->bytesString;
+ $ords = array_pad($ords,$pad,0);
+
+ $pad *= $this->bytesString;
+ $bin = array_pad(array(), $pad>>5, 0);
$mask = (1 << $this->bytesString) - 1;
- for($i = 0; $i < count($ords) * $this->bytesString; $i += $this->bytesString)
+ for($i = 0; $i < $pad ; $i += $this->bytesString)
$bin[$i>>5] |= ($ords[$i / $this->bytesString] & $mask) << (24 - $i%32);
$bin[] = $length*$this->bytesString;
return $bin;
$split_length = abs($split_length);
if (($split_length == 0) || ($strlen == 0)) {
- $result = false;
+ return false;
} elseif ($split_length >= $strlen) {
- $result[] = $string;
+ return array($string);
} else {
$length = $split_length;
-
+ $result = array();
for ($i = 0; $i < $strlen; $i++)
{
$i = (($sign < 0) ? $i + $length : $i);
? ($strlen - ($i + 1))
: $split_length;
}
+ return $result;
}
-
- return $result;
}
}