实用函数2


Posted in PHP onNovember 08, 2007

1、产生随机字符串函数

function random($length) {  
$hash = @#@#;  
$chars = @#ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyz@#;  
$max = strlen($chars) - 1;  
mt_srand((double)microtime() * 1000000);  
for($i = 0; $i < $length; $i++) {  
  $hash .= $chars[mt_rand(0, $max)];  
}  
return $hash;  
} 

2、截取一定长度的字符串(该函数对GB2312使用有效)
function Wordscut($string, $length ,$sss=0) {  
if(strlen($string) > $length) {  
               if($sss){  
                      $length=$length - 3;  
                      $addstr=@# ...@#;  
                }  
  for($i = 0; $i < $length; $i++) {  
   if(ord($string[$i]) > 127) {  
    $wordscut .= $string[$i].$string[$i + 1];  
    $i++;  
   } else {  
    $wordscut .= $string[$i];  
   }  
  }  
  return $wordscut.$addstr;  
}  
return $string;  
} 

3、取得客户端IP地址
function GetIP(){  
             if (getenv("HTTP_CLIENT_IP") && strcasecmp(getenv("HTTP_CLIENT_IP"), "unknown"))  
                   $ip = getenv("HTTP_CLIENT_IP");  
             else if (getenv("HTTP_X_FORWARDED_FOR") && strcasecmp(getenv("HTTP_X_FORWARDED_FOR"), "unknown"))  
                   $ip = getenv("HTTP_X_FORWARDED_FOR");  
             else if (getenv("REMOTE_ADDR") && strcasecmp(getenv("REMOTE_ADDR"), "unknown"))  
                   $ip = getenv("REMOTE_ADDR");  
             else if (isset($_SERVER[@#REMOTE_ADDR@#]) && $_SERVER[@#REMOTE_ADDR@#] && strcasecmp($_SERVER[@#REMOTE_ADDR@#], "unknown"))  
                   $ip = $_SERVER[@#REMOTE_ADDR@#];  
             else  
                  $ip = "unknown";               return($ip);  
} 

4、判断邮箱地址
function checkEmail($inAddress)  
{  
return (ereg("^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+(\.[a-zA-Z0-9_-])+",$inAddress));  
} 

5、分页(两个函数配合使用)
function getpage($sql,$page_size=20)  
{  
      global $page,$totalpage,$sums;  //out param  
      $page = $_GET["page"];  
      //$eachpage = $page_size;  
      $pagesql = strstr($sql," from ");  
      $pagesql = "select count(*) as ids ".$pagesql;  
      $result = mysql_query($pagesql);  
      if($rs = mysql_fetch_array($result)) $sums = $rs[0];  
      $totalpage = ceil($sums/$page_size);  
      if((!$page)($page<1)) $page=1;  
   $startpos = ($page-1)*$page_size;  
   $sql .=" limit $startpos,$page_size ";  
    return $sql;  
}  
function showbar($string="")  
{       
    global $page,$totalpage;  
$out="共<font ".$totalpage."color=@#red@#><b>".$totalpage."</b></font>页  ";  
    $linkNum =4;  
    $start = ($page-round($linkNum/2))>0 ? ($page-round($linkNum/2)) : "1";  
    $end   = ($page+round($linkNum/2))<$totalpage ? ($page+round($linkNum/2)) : $totalpage;  
    $prestart=$start-1;  
    $nextend=$end+1;  
    if($page<>1)   
$out .= "<a href=@#?page=1&&".$string."@#title=第一页>第一页</a> ";  
    if($start>1)  
$out.="<a href=@#?page=".$prestart."@# title=上一页>..<<</a> ";  for($t=$start;$t<=$end;$t++)  
    {  
     $out .= ($page==$t) ? "<font [".$t."]color=@#red@#><b>[".$t."]</b></font> " : "<a $thref=@#?page=$t&&".$string."@#>$t</a> ";  
    }  
if($end<$totalpage)  
$out.="<a href=@#?page=".$nextend."&&".$string."@# title=下一页>>>..</a>";  
    if($page<>$totalpage)  
   $out .= " <a href=@#?page=".$totalpage."&&".$string."@# title=最后页>最后页</a>";  
   return $out;  
} 

6、获取新插入数据的ID
<?  
mysql_insert_id();  
?>
PHP 相关文章推荐
浅谈web上存漏洞及原理分析、防范方法(安全文件上存方法)
Jun 29 PHP
php获取网页请求状态程序示例
Jun 17 PHP
PHP中的Streams详细介绍
Nov 12 PHP
PHP使用内置dir类实现目录遍历删除
Mar 31 PHP
php显示时间常用方法小结
Jun 05 PHP
php单例模式的简单实现方法
Jun 10 PHP
PHP5.4起内置web服务器使用方法
Aug 09 PHP
PHP 实现字符串翻转(包含中文汉字)的实现代码
Apr 01 PHP
通过源码解析Laravel的依赖注入
Jan 22 PHP
Laravel框架路由和控制器的绑定操作方法
Jun 12 PHP
php实现生成PDF文件的方法示例【基于FPDF类库】
Jul 21 PHP
PHP输出Excel PHPExcel的方法
Jul 26 PHP
一个图形显示IP的PHP程序代码
Oct 19 #PHP
php在线生成ico文件的代码
Oct 09 #PHP
pw的一个放后门的方法分析
Oct 08 #PHP
使用 eAccelerator加速PHP代码的方法
Sep 30 #PHP
实现php加速的eAccelerator dll支持文件打包下载
Sep 30 #PHP
用windows下编译过的eAccelerator for PHP 5.1.6实现php加速的使用方法
Sep 30 #PHP
一些常用的php简单命令代码集锦
Sep 24 #PHP
You might like
如何跨站抓取别的站点的页面的补充
2006/10/09 PHP
PHP批量上传图片的具体实现方法介绍.
2014/02/26 PHP
让插入到 innerHTML 中的 script 跑起来的实现代码
2006/07/01 Javascript
jQuery获取Select选择的Text和Value(详细汇总)
2013/01/25 Javascript
JS控制一个DIV层在指定时间内消失的方法
2014/02/17 Javascript
jQuery Ajax()方法使用指南
2014/11/19 Javascript
AngularJS入门教程之学习环境搭建
2014/12/06 Javascript
JavaScript识别网页关键字并进行描红的方法
2015/11/09 Javascript
学习JavaScript设计模式(链式调用)
2015/11/26 Javascript
JSON字符串和对象相互转换实例分析
2016/06/16 Javascript
jQuery获取file控件中图片的宽高与大小
2016/08/04 Javascript
HTML5 实现的一个俄罗斯方块实例代码
2016/09/19 Javascript
想用好React的你必须要知道的一些事情
2017/07/24 Javascript
checkbox:click事件触发span元素内容改变的方法
2017/09/11 Javascript
JavaScript实现短暂提示框功能
2018/04/04 Javascript
微信小程序实现单选选项卡切换效果
2020/06/19 Javascript
详解用JS添加和删除class类名
2019/03/25 Javascript
通过实例了解js函数中参数的传递
2019/06/15 Javascript
微信小程序页面间传递数组对象方法解析
2019/11/06 Javascript
JS实现动态倒计时功能(天数、时、分、秒)
2019/12/12 Javascript
Javascript类型判断相关例题及解析
2020/08/26 Javascript
python列表去重的二种方法
2014/02/14 Python
使用Python下的XSLT API进行web开发的简单教程
2015/04/15 Python
python使用Tkinter显示网络图片的方法
2015/04/24 Python
Python使用cx_Oracle模块将oracle中数据导出到csv文件的方法
2015/05/16 Python
python爬虫框架scrapy实战之爬取京东商城进阶篇
2017/04/24 Python
浅谈function(函数)中的动态参数
2017/04/30 Python
钉钉群自定义机器人消息Python封装的实例
2019/02/20 Python
使用Python创建简单的HTTP服务器的方法步骤
2019/04/26 Python
python创建ArcGIS shape文件的实现
2019/12/06 Python
详解BeautifulSoup获取特定标签下内容的方法
2020/12/07 Python
波兰最大的宠物用品网上商店:FERA.PL
2019/08/11 全球购物
信用卡工资证明范本
2015/06/19 职场文书
国庆节到了,利用JS实现一个生成国庆风头像的小工具 详解实现过程
2021/10/05 Javascript
Win11运行育碧游戏总是崩溃怎么办 win11玩育碧游戏出现性能崩溃的解决办法
2022/04/06 数码科技
virtualenv隔离Python环境的问题解析
2022/06/21 Python