• 心情随笔

二宝博客

好记性不如赖笔头
二宝博客
  • android中CleartextHTTP错误解决方案
  • 示例页面
  • 首页
  • php
    • Thinkphp
  • JS相关
  • 服务器
    • Linux
    • Windows
    • xenserv
  • DIVCSS
  • MAC
  • 软件分享
  • 从discuz里面拿来的东东[转phpx]

    从discuz里面拿来的东东[转phpx]

    加解密函数  $encode = authocode(‘我要加密’,‘ENCODE’);  $decode = authocode(‘我要解密’,‘DECODE’);
    $auth_key = 34577 ; //密钥
    function authcode($string, $operation, $key = ”) {     $key = md5($key ? $key : $GLOBALS[‘auth_key’]);
        
    $key_length = strlen($key);     $string = $operation == ‘DECODE’ ? base64_decode($string) : substr(md5($string.$key), 0, 8).$string;
        
    $string_length = strlen($string);     $rndkey = $box = array();
        
    $result = ”;     for($i = 0; $i <= 255; $i++) {
            
    $rndkey[$i] = ord($key[$i % $key_length]);
            
    $box[$i] = $i;
        }     for(
    $j = $i = 0; $i < 256; $i++) {
            
    $j = ($j + $box[$i] + $rndkey[$i]) % 256;
            
    $tmp = $box[$i];
            
    $box[$i] = $box[$j];
            
    $box[$j] = $tmp;
        }     for(
    $a = $j = $i = 0; $i < $string_length; $i++) {
            
    $a = ($a + 1) % 256;
            
    $j = ($j + $box[$a]) % 256;
            
    $tmp = $box[$a];
            
    $box[$a] = $box[$j];
            
    $box[$j] = $tmp;
            
    $result .= chr(ord($string[$i]) ^ ($box[($box[$a] + $box[$j]) % 256]));
        }     if(
    $operation == ‘DECODE’) {
            if(
    substr($result, 0, 8) == substr(md5(substr($result, 8).$key), 0, 8)) {
                return 
    substr($result, 8);
            } else {
                return 
    ”;
            }
        } else {
            return 
    str_replace(‘=’, ”, base64_encode($result));
        } }
    ?>

    字符串截取函数 $cutstr =  cutstr(‘截取我,hahahahahaaha’,‘3’); function cutstr($string, $length, $dot = ‘ …’) {
        global 
    $charset;     if(strlen($string) <= $length) {
            return 
    $string;
        }     
    $string = str_replace(array(‘&’, ‘"’, ‘<‘, ‘>’), array(‘&’, ‘”‘, ‘<', ‘>’), $string);     $strcut = ”;
        if(
    strtolower($charset) == ‘utf-8’) {         $n = $tn = $noc = 0;
            while(
    $n < strlen($string)) {             $t = ord($string[$n]);
                if(
    $t == 9 || $t == 10 || (32 <= $t && $t <= 126)) {
                    
    $tn = 1; $n++; $noc++;
                } elseif(
    194 <= $t && $t <= 223) {
                    
    $tn = 2; $n += 2; $noc += 2;
                } elseif(
    224 <= $t && $t < 239) {
                    
    $tn = 3; $n += 3; $noc += 2;
                } elseif(
    240 <= $t && $t <= 247) {
                    
    $tn = 4; $n += 4; $noc += 2;
                } elseif(
    248 <= $t && $t <= 251) {
                    
    $tn = 5; $n += 5; $noc += 2;
                } elseif(
    $t == 252 || $t == 253) {
                    
    $tn = 6; $n += 6; $noc += 2;
                } else {
                    
    $n++;
                }             if(
    $noc >= $length) {
                    break;
                }         }
            if(
    $noc > $length) {
                
    $n -= $tn;
            }         
    $strcut = substr($string, 0, $n);     } else {
            for(
    $i = 0; $i < $length – strlen($dot) – 1; $i++) {
                
    $strcut .= ord($string[$i]) > 127 ? $string[$i].$string[++$i] : $string[$i];
            }
        }     
    $strcut = str_replace(array(‘&’, ‘”‘, ‘<', ‘>’), array(‘&’, ‘"’, ‘<‘, ‘>’), $strcut);     return $strcut.$dot;
    }
    function 
    daddslashes($string, $force = 0) {
        !
    defined(‘MAGIC_QUOTES_GPC’) && define(‘MAGIC_QUOTES_GPC’, get_magic_quotes_gpc());
        if(!
    MAGIC_QUOTES_GPC || $force) {
            if(
    is_array($string)) {
                foreach(
    $string as $key => $val) {
                    
    $string[$key] = daddslashes($val, $force);
                }
            } else {
                
    $string = addslashes($string);
            }
        }
        return 
    $string;
    }
    ?>
    function random($length, $numeric = 0) {
        
    PHP_VERSION < ‘4.2.0’ && mt_srand((double)microtime() * 1000000);
        if(
    $numeric) {
            
    $hash = sprintf(‘%0’.$length.‘d’, mt_rand(0, pow(10, $length) – 1));
        } else {
            
    $hash = ”;
            
    $chars = ‘ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyz’;
            
    $max = strlen($chars) – 1;
            for(
    $i = 0; $i < $length; $i++) {
                
    $hash .= $chars[mt_rand(0, $max)];
            }
        }
        return 
    $hash;
    }
    ?>
    // discuz 一个ip转换地址的函数 wry.dat 是ip数据库 可以从纯真网下载最新的 [url]http://www.cz88.net/[/url] function convertip($ip) {
        if(!
    preg_match(“/^d{1,3}.d{1,3}.d{1,3}.d{1,3}$/”, $ip)) {
            return 
    ”;
        }     if(
    $fd = @fopen(DISCUZ_ROOT.‘./ipdata/wry.dat’, ‘rb’)) {         $ip = explode(‘.’, $ip);
            
    $ipNum = $ip[0] * 16777216 + $ip[1] * 65536 + $ip[2] * 256 + $ip[3];         $DataBegin = fread($fd, 4);
            
    $DataEnd = fread($fd, 4);
            
    $ipbegin = implode(”, unpack(‘L’, $DataBegin));
            if(
    $ipbegin < 0) $ipbegin += pow(2, 32);
            
    $ipend = implode(”, unpack(‘L’, $DataEnd));
            if(
    $ipend < 0) $ipend += pow(2, 32);
            
    $ipAllNum = ($ipend – $ipbegin) / 7 + 1;         $BeginNum = 0;
            
    $EndNum = $ipAllNum;         while($ip1num > $ipNum || $ip2num < $ipNum) {
                
    $Middle= intval(($EndNum + $BeginNum) / 2);             fseek($fd, $ipbegin + 7 * $Middle);
                
    $ipData1 = fread($fd, 4);
                if(
    strlen($ipData1) < 4) {
                    
    fclose($fd);
                    return 
    ‘System Error’;
                }
                
    $ip1num = implode(”, unpack(‘L’, $ipData1));
                if(
    $ip1num < 0) $ip1num += pow(2, 32);             if($ip1num > $ipNum) {
                    
    $EndNum = $Middle;
                    continue;
                }             
    $DataSeek = fread($fd, 3);
                if(
    strlen($DataSeek) < 3) {
                    
    fclose($fd);
                    return 
    ‘System Error’;
                }
                
    $DataSeek = implode(”, unpack(‘L’, $DataSeek.chr(0)));
                
    fseek($fd, $DataSeek);
                
    $ipData2 = fread($fd, 4);
                if(
    strlen($ipData2) < 4) {
                    
    fclose($fd);
                    return 
    ‘System Error’;
                }
                
    $ip2num = implode(”, unpack(‘L’, $ipData2));
                if(
    $ip2num < 0) $ip2num += pow(2, 32);             if($ip2num < $ipNum) {
                    if(
    $Middle == $BeginNum) {
                        
    fclose($fd);
                        return 
    ‘Unknown’;
                    }
                    
    $BeginNum = $Middle;
                }
            }         
    $ipFlag = fread($fd, 1);
            if(
    $ipFlag == chr(1)) {
                
    $ipSeek = fread($fd, 3);
                if(
    strlen($ipSeek) < 3) {
                    
    fclose($fd);
                    return 
    ‘System Error’;
                }
                
    $ipSeek = implode(”, unpack(‘L’, $ipSeek.chr(0)));
                
    fseek($fd, $ipSeek);
                
    $ipFlag = fread($fd, 1);
            }         if(
    $ipFlag == chr(2)) {
                
    $AddrSeek = fread($fd, 3);
                if(
    strlen($AddrSeek) < 3) {
                    
    fclose($fd);
                    return 
    ‘System Error’;
                }
                
    $ipFlag = fread($fd, 1);
                if(
    $ipFlag == chr(2)) {
                    
    $AddrSeek2 = fread($fd, 3);
                    if(
    strlen($AddrSeek2) < 3) {
                        
    fclose($fd);
                        return 
    ‘System Error’;
                    }
                    
    $AddrSeek2 = implode(”, unpack(‘L’, $AddrSeek2.chr(0)));
                    
    fseek($fd, $AddrSeek2);
                } else {
                    
    fseek($fd, –1, SEEK_CUR);
                }             while((
    $char = fread($fd, 1)) != chr(0))
                    
    $ipAddr2 .= $char;             $AddrSeek = implode(”, unpack(‘L’, $AddrSeek.chr(0)));
                
    fseek($fd, $AddrSeek);             while(($char = fread($fd, 1)) != chr(0))
                    
    $ipAddr1 .= $char;
            } else {
                
    fseek($fd, –1, SEEK_CUR);
                while((
    $char = fread($fd, 1)) != chr(0))
                    
    $ipAddr1 .= $char;             $ipFlag = fread($fd, 1);
                if(
    $ipFlag == chr(2)) {
                    
    $AddrSeek2 = fread($fd, 3);
                    if(
    strlen($AddrSeek2) < 3) {
                        
    fclose($fd);
                        return 
    ‘System Error’;
                    }
                    
    $AddrSeek2 = implode(”, unpack(‘L’, $AddrSeek2.chr(0)));
                    
    fseek($fd, $AddrSeek2);
                } else {
                    
    fseek($fd, –1, SEEK_CUR);
                }
                while((
    $char = fread($fd, 1)) != chr(0))
                    
    $ipAddr2 .= $char;
            }
            
    fclose($fd);         if(preg_match(‘/http/i’, $ipAddr2)) {
                
    $ipAddr2 = ”;
            }
            
    $ipaddr = “$ipAddr1 $ipAddr2”;
            
    $ipaddr = preg_replace(‘/CZ88.NET/is’, ”, $ipaddr);
            
    $ipaddr = preg_replace(‘/^s*/is’, ”, $ipaddr);
            
    $ipaddr = preg_replace(‘/s*$/is’, ”, $ipaddr);
            if(
    preg_match(‘/http/i’, $ipaddr) || $ipaddr == ”) {
                
    $ipaddr = ‘Unknown’;
            }         return 
    $ipaddr;     } else {         $datadir = DISCUZ_ROOT.‘./ipdata/’;
            
    $ip_detail = explode(‘.’, $ip);
            if(
    file_exists($datadir.$ip_detail[0].‘.txt’)) {
                
    $ip_fdata = @fopen($datadir.$ip_detail[0].‘.txt’, ‘r’);
            } else {
                if(!(
    $ip_fdata = @fopen($datadir.‘0.txt’, ‘r’))) {
                    return 
    ‘Invalid IP data file’;
                }
            }
            for (
    $i = 0; $i <= 3; $i++) {
                
    $ip_detail[$i] = sprintf(‘%03d’, $ip_detail[$i]);
            }
            
    $ip = join(‘.’, $ip_detail);
            do {
                
    $ip_data = fgets($ip_fdata, 200);
                
    $ip_data_detail = explode(‘|’, $ip_data);
                if(
    $ip >= $ip_data_detail[0] && $ip <= $ip_data_detail[1]) {
                    
    fclose($ip_fdata);
                    return 
    $ip_data_detail[2].$ip_data_detail[3];
                }
            } while(!
    feof($ip_fdata));
            
    fclose($ip_fdata);
            return 
    ‘UNKNOWN’;     } }
    ?>
    ]]>

    键盘游走者 发布于 2008-02-17 22:11php抢沙发
    查看
  • 新年新气象!

    新年新气象!

    好几天没有打理博客了,来抖擞下,哎新年就病倒了郁闷。。。

    ]]>

    键盘游走者 发布于 2008-02-16 03:07心情随笔抢沙发
    查看
  • 杰奇采集规则编写教程

    杰奇采集规则编写教程

    添加采集规则 规则说明 系统默认变量: – 文章序号, - 章节序号, - 文章子序号, - 章节子序号。 系统标签 * 可以替代任意字符串。 系统标签 ! 可以替代除了以外的任意字符串。 系统标签 ~ 可以替代除了‘”以外的任意字符串。 系统标签 ^ 可以替代除了数字和之外字符串。 系统标签 $ 可以替代 ...

    键盘游走者 发布于 2008-01-28 06:30常用软件, 软件分享抢沙发
    查看
  • 【搜狗拼音输入法 3.2 论坛版】

    【搜狗拼音输入法 3.2 论坛版】

    新版本的更新日志如下: 新增功能 1.支持简拼组词; 2.输入法与皮肤编辑器全面支持png格式的图片(请到皮肤频道下载新版皮肤编辑器)。 功能改进: 1.优化了系统词库、智能组词: 2.更新了错音提示数据库; 3.添加了导出txt文本词库的功能; 4.改进了u模式下以u开头的英文网址输入。 Bug修复: 1.解决了在某 ...

    键盘游走者 发布于 2008-01-23 06:38常用软件, 软件分享抢沙发
    查看
  • IMETool 2.7.5_Silence_2008-1-21更新

    IMETool 2.7.5_Silence_2008-1-21更新


    鼠标猛击这里下载
    鼠标猛击这里下载]]>

    键盘游走者 发布于 2008-01-23 06:35常用软件, 软件分享抢沙发
    查看
  • 灵魂的感触…

    灵魂的感触…

    今天终于听完了《和空姐同居的日子》广播剧 感悟。。。 从灵魂深处,当爱你的人在你的身边的时候可能你感受不到她每时每刻都在爱你 当爱你的人关心和爱护你的时候你总是觉得她啰嗦。 可不知她还是每时每刻都在爱你 当于爱你的人吵架的时候她是默默的接受你的指责。默默的接受你的谩骂。可不知她是 ...

    键盘游走者 发布于 2008-01-20 09:51心情随笔抢沙发
    查看
  • 和空姐同居的日子

    和空姐同居的日子

    http://bbs.ly5351.com/kongjie1.Wma

    ……………..

    http://bbs.ly5351.com/kongjie30.Wma

    很不错。可以去网上搜一下,语音版。很触动,好好对带你身边的她…

    ]]>

    键盘游走者 发布于 2008-01-20 09:26心情随笔抢沙发
    查看
  • 二首歌不错听一下

    二首歌不错听一下

    呵呵[localfile=1][localfile=2]

    ]]>

    键盘游走者 发布于 2008-01-20 08:17心情随笔抢沙发
    查看
  • mysql同步复制搭建方法

    mysql同步复制搭建方法

    MySQL数据同步主要有三种方式: 1.利用MySQL自身的数据库同步功能 2.利用MySQL数据库的特性(数据库存在固顶目录,并且以文件形式存储),进行数据库目录同步以达到数据同步目的 3.利用专用的MySQL数据库同步软件 1.利用MySQL自身的数据库同步功能(下面参考自网上的文章,写的非常详细了) MySQL从3.23.15版本以后提供 ...

    键盘游走者 发布于 2008-01-13 20:19php抢沙发
    查看
  • php时间不正确解决方案

    php时间不正确解决方案

    。呵呵,输出的时间是格林尼治标准时间!比北京时间相差8个时区!    加8就ok了 2。date_default_timezone_set(“PRC”);    3。PHP   5.1以上     PHP.ini     date.timezone   =   PRC   或则 设置时区,php5新增的。     再php.ini中找到     [Date]     ;   Defines   the   default   ...

    键盘游走者 发布于 2008-01-09 07:07php抢沙发
    查看
« 上一页 1 … 33 34 35 36 37 … 40 下一页 »
2025 年 12 月
一 二 三 四 五 六 日
1234567
891011121314
15161718192021
22232425262728
293031  
« 10 月    

归档

  • 最新日志
  • 热评日志
  • 随机日志
  • 如何在Windows 7电脑上删除系统服务
  • L2TP and PPTP共存一键安装
  • C盘爆红,非微信占用,非休眠占用,非缓存占用那么可能是这个
  • 贝尔I-120E-QT光猫Telnet、导出配置文件 、语音鉴权密码
  • 解决Intel AC3160无线网卡 系统无法连接WIFI6路由器问题
  • 萤石 Y5 POE版 CS-Y5-V100-8B4EKFL 系列连不上海康录像机解决办法
  • pve查看网卡信息
  • TPLINK POE摄像机尾插坏了解决办法
  • 海康录像机怎样进入OSD配置?
  • Navicat Premium v17.2.3绿色版
  • Linux防火墙-iptables/firewalld的使用教程
  • Linux开关机命令:shutdown,reboot,halt,init之间的区别
  • 史上最全华为路由器交换机配置命令大合集
  • 交换机基本配置命令
  • 最新版本IDM
  • 一键修复系统更新造成的打印机无法共享2023.06.15
  • Android 9.0 网络权限的问题以及android:usesCleartextTraffic
  • 解决银河麒麟系统开机后桌面无图标,只有下方开始菜单和任务栏可操作问题
  • Win10安装打印机驱动程序失败提示“试图将驱动程序添加到存储区时遇到问题”解决方法
  • 遥志代-理服务器CCProxy
  • PHP提取中文首字母
  • Jquery清除style样式
  • php整理常用时间戳和日期
  • 常用的PHP函数
  • 贝尔I-120E-QT光猫Telnet、导出配置文件 、语音鉴权密码
  • Mac OS 下微信多开 防撤回 远程控制
  • 密码保护:phpstorm激活
  • 试个照片
  • ThinkPHP分页无法使用汉字URL
  • PHP防注入安全代码

最活跃的读者

最新评论

友情链接

  • 大宝博客
  • 白俊遥

Copyright © 2008 二宝博客. Powered by WordPress. Theme by Weisay. 豫ICP备2023032064号-1.