ThinkPHP/Library/Vendor/phpRPC/bigint.php
(开头部分) 19KB这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。
<?php
/**********************************************************\
| |
| The implementation of PHPRPC Protocol 3.0 |
| |
| bigint.php |
| |
| Release 3.0.1 |
| Copyright by Team-PHPRPC |
| |
| WebSite: http://www.phprpc.org/ |
| http://www.phprpc.net/ |
| http://www.phprpc.com/ |
| http://sourceforge.net/projects/php-rpc/ |
| |
| Authors: Ma Bingyao <andot@ujn.edu.cn> |
| |
| This file may be distributed and/or modified under the |
| terms of the GNU General Public License (GPL) version |
| 2.0 as published by the Free Software Foundation and |
| appearing in the included file LICENSE. |
| |
\**********************************************************/
/* Big integer expansion library.
*
* Copyright: Ma Bingyao <andot@ujn.edu.cn>
* mgccl <mgcclx@gmail.com>
* Version: 3.0.1
* LastModified: Apr 12, 2010
* This library is free. You can redistribute it and/or modify it under GPL.
*/
if (extension_loaded('gmp')) {
function bigint_dec2num($dec) {
return gmp_init($dec);
}
function bigint_num2dec($num) {
return gmp_strval($num);
}
function bigint_str2num($str) {
return gmp_init("0x".bin2hex($str));
}
function bigint_num2str($num) {
$str = gmp_strval($num, 16);
$len = strlen($str);
if ($len % 2 == 1) {
$str = '0'.$str;
}
return pack("H*", $str);
}
function bigint_random($n, $s) {
$result = gmp_init(0);
for ($i = 0; $i < $n; $i++) {
if (mt_rand(0, 1)) {
gmp_setbit($result, $i);
}
}
if ($s) {
gmp_setbit($result, $n - 1);
后面还有 309 行代码,解锁后查看完整代码
24 小时内免费解锁 3 个项目,之后 1 积分/个。 规则说明
AI 解读
登录后可用,每次 10 积分,解读结果公开显示在下面。
还没有人解读过这个文件。
