mirror of
https://github.com/phpseclib/phpseclib.git
synced 2024-11-16 10:15:14 +00:00
- remove PHP_Compat stuff; install PHP_Compat from PEAR if you want PHP4 support
This commit is contained in:
parent
145d664aa1
commit
2306b73677
@ -1,41 +0,0 @@
|
|||||||
<?php
|
|
||||||
// $Id: array_fill.php,v 1.1 2007/07/02 04:19:55 terrafrost Exp $
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Replace array_fill()
|
|
||||||
*
|
|
||||||
* @category PHP
|
|
||||||
* @package PHP_Compat
|
|
||||||
* @license http://www.opensource.org/licenses/mit-license.html MIT License
|
|
||||||
* @copyright 2004-2007 Aidan Lister <aidan@php.net>, Arpad Ray <arpad@php.net>
|
|
||||||
* @link http://php.net/function.array_fill
|
|
||||||
* @author Jim Wigginton <terrafrost@php.net>
|
|
||||||
* @version $Revision: 1.1 $
|
|
||||||
* @since PHP 4.2.0
|
|
||||||
*/
|
|
||||||
function php_compat_array_fill($start_index, $num, $value)
|
|
||||||
{
|
|
||||||
if ($num <= 0) {
|
|
||||||
user_error('array_fill(): Number of elements must be positive', E_USER_WARNING);
|
|
||||||
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
$temp = array();
|
|
||||||
|
|
||||||
$end_index = $start_index + $num;
|
|
||||||
for ($i = (int) $start_index; $i < $end_index; $i++) {
|
|
||||||
$temp[$i] = $value;
|
|
||||||
}
|
|
||||||
|
|
||||||
return $temp;
|
|
||||||
}
|
|
||||||
|
|
||||||
// Define
|
|
||||||
if (!function_exists('array_fill')) {
|
|
||||||
function array_fill($start_index, $num, $value)
|
|
||||||
{
|
|
||||||
return php_compat_array_fill($start_index, $num, $value);
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,66 +0,0 @@
|
|||||||
<?php
|
|
||||||
// $Id: bcpowmod.php,v 1.1 2007-07-02 04:19:55 terrafrost Exp $
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Replace bcpowmod()
|
|
||||||
*
|
|
||||||
* @category PHP
|
|
||||||
* @package PHP_Compat
|
|
||||||
* @license LGPL - http://www.gnu.org/licenses/lgpl.html
|
|
||||||
* @copyright 2004-2007 Aidan Lister <aidan@php.net>, Arpad Ray <arpad@php.net>
|
|
||||||
* @link http://php.net/function.bcpowmod
|
|
||||||
* @author Sara Golemon <pollita@php.net>
|
|
||||||
* @version $Revision: 1.1 $
|
|
||||||
* @since PHP 5.0.0
|
|
||||||
* @require PHP 4.0.0 (user_error)
|
|
||||||
*/
|
|
||||||
function php_compat_bcpowmod($x, $y, $modulus, $scale = 0)
|
|
||||||
{
|
|
||||||
// Sanity check
|
|
||||||
if (!is_scalar($x)) {
|
|
||||||
user_error('bcpowmod() expects parameter 1 to be string, ' .
|
|
||||||
gettype($x) . ' given', E_USER_WARNING);
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!is_scalar($y)) {
|
|
||||||
user_error('bcpowmod() expects parameter 2 to be string, ' .
|
|
||||||
gettype($y) . ' given', E_USER_WARNING);
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!is_scalar($modulus)) {
|
|
||||||
user_error('bcpowmod() expects parameter 3 to be string, ' .
|
|
||||||
gettype($modulus) . ' given', E_USER_WARNING);
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!is_scalar($scale)) {
|
|
||||||
user_error('bcpowmod() expects parameter 4 to be integer, ' .
|
|
||||||
gettype($scale) . ' given', E_USER_WARNING);
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
$t = '1';
|
|
||||||
while (bccomp($y, '0')) {
|
|
||||||
if (bccomp(bcmod($y, '2'), '0')) {
|
|
||||||
$t = bcmod(bcmul($t, $x), $modulus);
|
|
||||||
$y = bcsub($y, '1');
|
|
||||||
}
|
|
||||||
|
|
||||||
$x = bcmod(bcmul($x, $x), $modulus);
|
|
||||||
$y = bcdiv($y, '2');
|
|
||||||
}
|
|
||||||
|
|
||||||
return $t;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// Define
|
|
||||||
if (!function_exists('bcpowmod')) {
|
|
||||||
function bcpowmod($x, $y, $modulus, $scale = 0)
|
|
||||||
{
|
|
||||||
return php_compat_bcpowmod($x, $y, $modulus, $scale);
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,59 +0,0 @@
|
|||||||
<?php
|
|
||||||
/**
|
|
||||||
* Replace str_split()
|
|
||||||
*
|
|
||||||
* @category PHP
|
|
||||||
* @package PHP_Compat
|
|
||||||
* @license LGPL - http://www.gnu.org/licenses/lgpl.html
|
|
||||||
* @copyright 2004-2007 Aidan Lister <aidan@php.net>, Arpad Ray <arpad@php.net>
|
|
||||||
* @link http://php.net/function.str_split
|
|
||||||
* @author Aidan Lister <aidan@php.net>
|
|
||||||
* @version $Revision: 1.1 $
|
|
||||||
* @since PHP 5
|
|
||||||
* @require PHP 4.0.0 (user_error)
|
|
||||||
*/
|
|
||||||
function php_compat_str_split($string, $split_length = 1)
|
|
||||||
{
|
|
||||||
if (!is_scalar($split_length)) {
|
|
||||||
user_error('str_split() expects parameter 2 to be long, ' .
|
|
||||||
gettype($split_length) . ' given', E_USER_WARNING);
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
$split_length = (int) $split_length;
|
|
||||||
if ($split_length < 1) {
|
|
||||||
user_error('str_split() The length of each segment must be greater than zero', E_USER_WARNING);
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
// Select split method
|
|
||||||
if ($split_length < 65536) {
|
|
||||||
// Faster, but only works for less than 2^16
|
|
||||||
preg_match_all('/.{1,' . $split_length . '}/s', $string, $matches);
|
|
||||||
return $matches[0];
|
|
||||||
} else {
|
|
||||||
// Required due to preg limitations
|
|
||||||
$arr = array();
|
|
||||||
$idx = 0;
|
|
||||||
$pos = 0;
|
|
||||||
$len = strlen($string);
|
|
||||||
|
|
||||||
while ($len > 0) {
|
|
||||||
$blk = ($len < $split_length) ? $len : $split_length;
|
|
||||||
$arr[$idx++] = substr($string, $pos, $blk);
|
|
||||||
$pos += $blk;
|
|
||||||
$len -= $blk;
|
|
||||||
}
|
|
||||||
|
|
||||||
return $arr;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// Define
|
|
||||||
if (!function_exists('str_split')) {
|
|
||||||
function str_split($string, $split_length = 1)
|
|
||||||
{
|
|
||||||
return php_compat_str_split($string, $split_length);
|
|
||||||
}
|
|
||||||
}
|
|
Loading…
Reference in New Issue
Block a user