当前位置:  编程技术>php
本页文章导读:
    ▪php获取在线访客Ip地址信息的方法      php获取在线访问Ip地址信息的方法,参考自discuz中的代码,有需要的朋友可以参考下。   代码如下: <?php if(getenv('HTTP_CLIENT_IP') && strcasecmp(getenv('HTTP_CLIENT_IP'), 'unknown')) {   $onlineip = ge.........
    ▪php写的Passport解密函数      php写的Passport解密函数:passport_decrypt,有需要的朋友可以参考下。   代码如下: <?php /** * Passport 解密函数 * * @param    string    加密后的字串 * @param    string    私有密匙(用于解密.........
    ▪又一个生成图片缩略图的函数      又一个生成图片缩略图的函数:photoThumb,有需要的朋友可以参考下。   代码如下: <?php function photoThumb($p_thumb_file, $p_photo_file, $p_max_size, $p_quality = 75) {       $pic = @imagecreatefromjpeg($p_phot.........

[1]php获取在线访客Ip地址信息的方法
    来源: 互联网  发布时间: 2013-12-24

php获取在线访问Ip地址信息的方法,参考自discuz中的代码,有需要的朋友可以参考下。
 

代码如下:

<?php
if(getenv('HTTP_CLIENT_IP') && strcasecmp(getenv('HTTP_CLIENT_IP'), 'unknown')) {
  $onlineip = getenv('HTTP_CLIENT_IP');
} elseif(getenv('HTTP_X_FORWARDED_FOR') && strcasecmp(getenv('HTTP_X_FORWARDED_FOR'), 'unknown')) {
  $onlineip = getenv('HTTP_X_FORWARDED_FOR');
} elseif(getenv('REMOTE_ADDR') && strcasecmp(getenv('REMOTE_ADDR'), 'unknown')) {
  $onlineip = getenv('REMOTE_ADDR');
} elseif(isset()($_SERVER['REMOTE_ADDR']) && $_SERVER['REMOTE_ADDR'] && strcasecmp($_SERVER['REMOTE_ADDR'], 'unknown')) {
  $onlineip = $_SERVER['REMOTE_ADDR'];
}

preg_match("/[\d\.]{7,15}/", $onlineip, $onlineipmatches);
$onlineip = $onlineipmatches[0] ? $onlineipmatches[0] : 'unknown';
unset($onlineipmatches);
?>


    
[2]php写的Passport解密函数
    来源: 互联网  发布时间: 2013-12-24

php写的Passport解密函数:passport_decrypt,有需要的朋友可以参考下。
 

代码如下:

<?php
/**
* Passport 解密函数
*
* @param    string    加密后的字串
* @param    string    私有密匙(用于解密和加密)
*
* @return  string    字串经过私有密匙解密后的结果
*/
function passport_decrypt($txt, $key) {

// $txt 的结果为加密后的字串经过 base64 解码,然后与私有密匙一起,
// 经过 passport_key() 函数处理后的返回值
$txt = passport_key(base64_decode($txt), $key);

// 变量初始化
$tmp = '';

// for 循环,$i 为从 0 开始,到小于 $txt 字串长度的整数
for ($i = 0; $i < strlen($txt); $i++) {
// $tmp 字串在末尾增加一位,其内容为 $txt 的第 $i 位,
// 与 $txt 的第 $i + 1 位取异或。然后 $i = $i + 1
$tmp .= $txt[$i] ^ $txt[++$i];
}

// 返回 $tmp 的值作为结果
return $tmp;

}

/**
* Passport 密匙处理函数
*
* @param    string    待加密或待解密的字串
* @param    string    私有密匙(用于解密和加密)
*
* @return  string    处理后的密匙
*/
function passport_key($txt, $encrypt_key) {

// 将 $encrypt_key 赋为 $encrypt_key 经 md5() 后的值
$encrypt_key = md5($encrypt_key);

// 变量初始化
$ctr = 0;
$tmp = '';

// for 循环,$i 为从 0 开始,到小于 $txt 字串长度的整数
for($i = 0; $i < strlen($txt); $i++) {
// 如果 $ctr = $encrypt_key 的长度,则 $ctr 清零
$ctr = $ctr == strlen($encrypt_key) ? 0 : $ctr;
// $tmp 字串在末尾增加一位,其内容为 $txt 的第 $i 位,
// 与 $encrypt_key 的第 $ctr + 1 位取异或。然后 $ctr = $ctr + 1
$tmp .= $txt[$i] ^ $encrypt_key[$ctr++];
}

// 返回 $tmp 的值作为结果
return $tmp;
}
?>


    
[3]又一个生成图片缩略图的函数
    来源: 互联网  发布时间: 2013-12-24

又一个生成图片缩略图的函数:photoThumb,有需要的朋友可以参考下。
 

代码如下:

<?php
function photoThumb($p_thumb_file, $p_photo_file, $p_max_size, $p_quality = 75) {
 
    $pic = @imagecreatefromjpeg($p_photo_file);

    if ($pic) {
        $thumb = @imagecreatetruecolor ($p_max_size, $p_max_size) or die ("Can't create Image!");
        $width = imagesx($pic);
        $height = imagesy($pic);
        if ($width < $height) {
                $twidth = $p_max_size;
                $theight = $twidth * $height / $width;
                imagecopyresized($thumb, $pic, 0, 0, 0, ($height/2)-($width/2), $twidth, $theight, $width, $height);
        } else {
                $theight = $p_max_size;
                $twidth = $theight * $width / $height;
                imagecopyresized($thumb, $pic, 0, 0, ($width/2)-($height/2), 0, $twidth, $theight, $width, $height);
        }

        ImageJPEG ($thumb, $p_thumb_file, $p_quality);
    }
}
?>

您可能感兴趣的文章:
php 多图片上传的简单例子(图文)
php GD库上传图片并创建缩略图的代码
一个创建图片缩略图的函数
php图片加水印与上传图片加水印类
php为图片加中文水印的代码
php上传文件并添加文字与图片水印的代码
php 上传图片加水印且支持透明的代码
php上传图片功能的实现


    
最新技术文章:
▪PHP函数microtime()时间戳的定义与用法
▪PHP单一入口之apache配置内容
▪PHP数组排序方法总结(收藏)
▪php数组排序方法大全(脚本学堂整理奉献)
▪php数组排序的几个函数(附实例)
▪php二维数组排序(实例)
▪php根据键值对二维数组排序的小例子
▪php验证码(附截图)
▪php数组长度的获取方法(三个实例)
▪php获取数组长度的方法举例
▪判断php数组维度(php数组长度)的方法
▪php获取图片的exif信息的示例代码
▪PHP 数组key长度对性能的影响实例分析
▪php函数指定默认值的方法示例
▪php提交表单到当前页面、提交表单后页面重定...
▪php四舍五入的三种实现方法
▪php获得数组长度(元素个数)的方法
▪php日期函数的简单示例代码
▪php数学函数的简单示例代码
▪php字符串函数的简单示例代码
▪php文件下载代码(多浏览器兼容、支持中文文...
▪php实现文件下载、支持中文文件名的示例代码...
▪php文件下载(防止中文文件名乱码)的示例代码
▪解决PHP文件下载时中文文件名乱码的问题
▪php数组去重(一维、二维数组去重)的简单示例
▪php小数点后取两位的三种实现方法
▪php Redis 队列服务的简单示例
▪PHP导出excel时数字变为科学计数的解决方法
▪PHP数组根据值获取Key的简单示例
▪php数组去重的函数代码示例
 


站内导航:


特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

©2012-2021,