您好,欢迎来到三六零分类信息网!老站,搜索引擎当天收录,欢迎发信息
免费发信息

006-PHP常用函数封装

2024/3/29 5:49:00发布5次查看
本篇文章介绍的内容是php常用函数封装  ,现在分享给大家,有需要的朋友可以参考一下
<?php /** * 获取来访者的真实ip */ function getrealip() { static $realip = null; if($realip !== null) { return $realip; } if(getenv('remote_addr')) { $realip = getenv('remote_addr'); } else if(getenv('http_client_ip')) { $realip = getenv('http_client_ip'); } else if (getenv('http_x_froward_for')) { $realip = getenv('http_x_froward_for'); } return $realip; } /** * 生成随机字符串 * @param int $num 生成的随机字符串的个数 * @return str 生成的随机字符串 * echo randstr(); */ function randstr($num=6) { $str = str_shuffle('abcedfghjkmnpqrstuvwxyzabcedfghjkmnpqrstuvwxyz23456789'); return substr($str, 0 , $num); } /** * 创建目录 root.'/upload/2015/01/25/qwefas.jpg' */ function createdir() { $path = '/upload/'.date('y/m/d'); $fpath = root . $path; if(is_dir($fpath) || mkdir($fpath , 0777 , true)) { return $path; } else { return false; } } /** * 获取文件后缀 * @param str $filename 文件名 * @return str 文件的后缀名,且带点. */ function getext($filename) { return strrchr($filename, '.'); } /** * 生成缩略图 * * @param str $oimg /upload/2016/01/25/asdfed.jpg * @param int $sw 生成缩略图的宽 * @param int $sh 生成缩略图的高 * @return str 生成缩略图的路径 /upload/2016/01/25/asdfed.png */ function makethumb($oimg , $sw=200 , $sh = 200) { //缩略图存放的路径的名称 $simg = dirname($oimg) . '/' . randstr() . '.png'; //获取大图和缩略图的绝对路径 $opath = root . $oimg;//原图的绝对路径 $spath = root . $simg;//最终生成的小图 //创建小画布 $spic = imagecreatetruecolor($sw, $sh); //创建白色 $white = imagecolorallocate($spic, 255, 255, 255); imagefill($spic, 0, 0, $white); //获取大图信息 list($bw , $bh ,$btype) = getimagesize($opath); //1 = gif,2 = jpg,3 = png,4 = swf,5 = psd,6 = bmp, //7 = tiff(intel byte order),8 = tiff(motorola byte order),9 = jpc,10 = jp2, //11 = jpx,12 = jb2,13 = swc,14 = iff,15 = wbmp,16 = xbm $map = array( 1=>'imagecreatefromgif', 2=>'imagecreatefromjpeg', 3=>'imagecreatefrompng', 15=>'imagecreatefromwbmp' ); if(!isset($map[$btype])) { return false; } //imagecreatefromjpeg(filename) $opic = $map[$btype]($opath);//大图资源 //计算缩略比 $rate = min($sw/$bw , $sh/$bh); $zw = $bw * $rate;//最终返回的小图宽 $zh = $bh * $rate;//最终返回的缩略小图高 //imagecopyresampled(dst_image, src_image, dst_x, dst_y, //src_x, src_y, dst_w, dst_h, src_w, src_h) //echo $rate , '<br>' , $zw , '<br>' , $zh ;exit(); //拷贝图像并修改大小 //imagecopyresampled($spic, $opic, 0, 0, 0, 0, $zw, $zh, $bw, $bh); imagecopyresampled($spic, $opic, ($sw-$zw)/2, ($sh-$zh)/2, 0, 0, $zw, $zh, $bw, $bh); //输出/保存图形 imagepng($spic , $spath); //销毁画布(关闭画板) imagedestroy($spic); imagedestroy($opic); return $simg; } /** * 转义字符串{ 对post,get,cookie数组进行转义 } * @param $arr * @return mixed */ function _addslashes($arr){ foreach ($arr as $k=>$v){ if(is_string($v)){ $arr[$k] = addslashes($v); }elseif(is_array($v)){ $arr[$k] = _addslashes($v); } } return $arr; }
相关推荐:
004-php图片上传实例
005-php获取来访者的真实ip
以上就是006-php常用函数封装 的详细内容。
该用户其它信息

VIP推荐

免费发布信息,免费发布B2B信息网站平台 - 三六零分类信息网 沪ICP备09012988号-2
企业名录