PHP项目开发中最常用的自定义函数整理


Posted in PHP onDecember 02, 2010

<?php
//alert提示
function alert($msg){
echo "<script>alert('$msg');</script>";
}
//把一些预定义的字符转换为 HTML 实体
function d_htmlspecialchars($string) {
if(is_array($string)) {
foreach($string as $key => $val) {
$string[$key] = d_htmlspecialchars($val);
}
} else {
$string = str_replace('&', '&', $string);
$string = str_replace('"', '"', $string);
$string = str_replace(''', ''', $string);
$string = str_replace('<', '<', $string);
$string = str_replace('>', '>', $string);
$string = preg_replace('/&(#\d;)/', '&\1', $string);
}
return $string;
}
//在预定义字符前加上反斜杠,包括 单引号、双引号、反斜杠、NULL,以保护数据库安全
function d_addslashes($string, $force = 0) {
if(!$GLOBALS['magic_quotes_gpc'] || $force) {
if(is_array($string)) {
foreach($string as $key => $val) $string[$key] = d_addslashes($val, $force);
}
else $string = addslashes($string);
}
return $string;
}
//生成随机字符串,包含大写、小写字母、数字
function randstr($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;
}
//转换时间戳为常用的日期格式
function trans_time($timestamp){
if($timestamp < 1) echo '无效的Unix时间戳';
else return date("Y-m-d H:i:s",$timestamp);
}
//获取IP
function get_ip() {
if ($_SERVER["HTTP_X_FORWARDED_FOR"])
$ip = $_SERVER["HTTP_X_FORWARDED_FOR"];
else if ($_SERVER["HTTP_CLIENT_IP"])
$ip = $_SERVER["HTTP_CLIENT_IP"];
else if ($_SERVER["REMOTE_ADDR"])
$ip = $_SERVER["REMOTE_ADDR"];
else if (getenv("HTTP_X_FORWARDED_FOR"))
$ip = getenv("HTTP_X_FORWARDED_FOR");
else if (getenv("HTTP_CLIENT_IP"))
$ip = getenv("HTTP_CLIENT_IP");
else if (getenv("REMOTE_ADDR"))
$ip = getenv("REMOTE_ADDR");
else
$ip = "Unknown";
return $ip;
}
//计算时间差:默认返回类型为“分钟”
//$old_time 只能是时间戳,$return_type 为 h 是小时,为 s 是秒
function timelag($old_time,$return_type='m'){
if($old_time < 1){
echo '无效的Unix时间戳';
}else{
switch($return_type){
case 'h':
$type = 3600; break;
case 'm':
$type = 60; break;
case 's':
$type = 1; break;
case '':
$type = 60; break;
}
$dif = round( (time()-$old_time)/$type ) ;
return $dif;
}
}
//获取当前页面的URL地址
function url_this(){
$url = "http://".$_SERVER ["HTTP_HOST"].$_SERVER["REQUEST_URI"];
$return_url = "<a href='$url'>$url</a>";
return $return_url;
}
//跳转函数
function url_redirect($url,$delay=''){
if($delay == ''){
echo "<script>window.location.href='$url'</script>";
}else{
echo "<meta http-equiv='refresh' content='$delay;URL=$url' />";
}
}
} //end func

?>

PHP 相关文章推荐
提升PHP速度全攻略
Oct 09 PHP
php !function_exists(&quot;T7FC56270E7A70FA81A5935B72EACBE29&quot;))代码解密
Jan 07 PHP
解析php中die(),exit(),return的区别
Jun 20 PHP
浅析PHP 按位与或 (^ 、&amp;)
Jun 21 PHP
国产PHP开发框架myqee新手快速入门教程
Jul 14 PHP
PHP中的switch语句的用法实例详解
Oct 21 PHP
php使用Header函数,PHP_AUTH_PW和PHP_AUTH_USER做用户验证
May 04 PHP
CodeIgniter记录错误日志的方法全面总结
May 17 PHP
PHP实现带重试功能的curl连接示例
Jul 28 PHP
PHP判断用户是否已经登录(跳转到不同页面或者执行不同动作)
Sep 22 PHP
AES加解密在php接口请求过程中的应用示例
Oct 26 PHP
PHP长连接实现与使用方法详解
Feb 11 PHP
PHP自动选择 连接本地还是远程数据库
Dec 02 #PHP
Mysql数据库操作类( 1127版,提供源码下载 )
Dec 02 #PHP
PHP分页函数代码(简单实用型)
Dec 02 #PHP
php图片处理:加水印、缩略图的实现(自定义函数:watermark、thumbnail)
Dec 02 #PHP
php小偷相关截取函数备忘
Nov 28 #PHP
php与paypal整合方法
Nov 28 #PHP
网站用php实现paypal整合方法
Nov 28 #PHP
You might like
Laravel事件监听器用法实例分析
2019/03/12 PHP
jsTree树控件(基于jQuery, 超强悍)[推荐]
2009/09/01 Javascript
两个比较有用的Javascript工具函数代码
2010/02/17 Javascript
使用indexOf等在JavaScript的数组中进行元素查找和替换
2013/09/18 Javascript
SuperSlide2实现图片滚动特效
2014/06/20 Javascript
js表头排序实现方法
2015/01/16 Javascript
jquery实现动态改变div宽度和高度
2015/05/08 Javascript
jQuery+AJAX实现无刷新下拉加载更多
2015/07/03 Javascript
JavaScript学习小结(一)——JavaScript入门基础
2015/09/02 Javascript
js实现4个方向滚动的球
2017/03/06 Javascript
JavaScript实现选中文字提示新浪微博分享效果
2017/06/15 Javascript
JS判断非空至少输入两个字符的简单实现方法
2017/06/23 Javascript
React + webpack 环境配置的方法步骤
2017/09/07 Javascript
NodeJs通过async/await处理异步的方法
2017/10/09 NodeJs
bootstrap table实现合并单元格效果
2018/12/24 Javascript
小程序云开发如何实现图片上传及发表文字
2019/05/17 Javascript
vue+elementUI实现图片上传功能
2019/08/20 Javascript
详解在vue-cli3.0中自定css、js和图片的打包路径
2019/08/26 Javascript
vue-resourc发起异步请求的方法
2020/02/11 Javascript
Vue自定义多选组件使用详解
2020/09/08 Javascript
[48:48]VGJ.T vs Liquid 2018国际邀请赛小组赛BO2 第二场 8.19
2018/08/21 DOTA
[02:47]2018年度DOTA2最佳辅助位选手4号位-完美盛典
2018/12/17 DOTA
Python读写unicode文件的方法
2015/07/10 Python
Python从使用线程到使用async/await的深入讲解
2018/09/16 Python
Python处理mysql特殊字符的问题
2020/03/02 Python
Python基于unittest实现测试用例执行
2020/11/25 Python
Python爬虫实现selenium处理iframe作用域问题
2021/01/27 Python
python模块内置属性概念及实例
2021/02/18 Python
吃透移动端 1px的具体用法
2019/12/16 HTML / CSS
AmazeUI在模态框中嵌入表单形成模态输入框
2020/08/20 HTML / CSS
便利店投资的创业计划书
2014/01/12 职场文书
一年级学生评语
2014/04/23 职场文书
2014年党员干部四风问题自我剖析材料
2014/09/29 职场文书
客户付款通知书
2015/04/23 职场文书
小学英语新课改心得体会
2016/01/22 职场文书
2016年学校“3.12”植树节活动总结
2016/03/16 职场文书