php懒人函数 自动添加数据

yipeiwu_com6年前PHP代码库
复制代码 代码如下:

/*
*@自动添加数据函数
*@$table 表名
*@$arr 字段库 array("title",array("content",int))
*@ array(字段,类型)
*@ 类型说明
html--允许html
unhtml-不允许html
int --int类型
float -- float 类型
*/
//自动插入数据函数
function autoInsert($table,$arr=array(),$method='post')
{
$sql="insert into ".DB_TBLPRE."$table set ";
$var="";
print_r($arr);
if(empty($arr)) $arr=$_POST?$_POST:$_GET;
if(empty($arr)) return false;
$ct=count($arr)-1;
foreach($arr as $k=> $v)
{
$vtype="unhtml";
if(is_array($v))
{
$vtype=@$v[1];
$v=$v[0];
}
if($method=='post')
{
$_POST[$v]=isset($_POST[$v])?trim($_POST[$v]):"";
if(is_int($_POST[$v]))
{
$_POST[$v]=intval($_POST[$v]);
}elseif(is_float($_POST[$v]))
{
$_POST[$v]=floatval($_POST[$v]);
}elseif(is_string($_POST[$v]))
{
//等于1 为保存html 默认不保存html
if($vtype=="unhtml")
{
$_POST[$v]=htmlspecialchars($_POST[$v]);
}elseif($vtype=="int")
{
$_POST[$v]=@intval($_POST[$v]);
}elseif($vtype=='float')
{
$_POST[$v]=@floatval($_POST[$v]);
}
}
$var.= "$v = '$_POST[$v]' ".($k<$ct?",":"");
}else
{
$_GET[$v]=isset($_GET[$v])?trim($_GET[$v]):"";
if(is_int($_GET[$v]))
{
$_GET[$v]=intval($_GET[$v]);
}elseif(is_float($_GET[$v]))
{
$_GET[$v]=floatval($_GET[$v]);
}elseif(is_string($_GET[$v]))
{
//等于1 为保存html 默认不保存html
if($vtype=='unhtml')
{
$_GET[$v]=htmlspecialchars($_GET[$v]);
}elseif($vtype=='int')
{
$_GET[$v]=intval($_GET[$v]);
}elseif($vtype=='float')
{
$_GET[$v]=floatval($_GET[$v]);
}
}
$var .="$v= '$_GET[$v]' ".($k<$ct?",":"");
}
}
$sql.=$var;
$this->query($sql);
return $this->insert_id();
}
/**
@自动更新数据函数
*@$table 表名
*@$arr 字段库 array("title",array("content",int))
*@ array(字段,类型)
*@ 类型说明
html--允许html
unhtml-不允许html
int --int类型
float -- float 类型
** $where 条件数组 类型同 $arr一样
*$method 表单提交的方式
*/
function autoUpdate($table,$arr=array(),$where=array(),$method='post')
{
$sql="update ".DB_TBLPRE."$table set ";
$var=$w="";
if(empty($arr)) $arr=$_POST?$_POST:$_GET;
if(empty($arr)) return false;
$ct=count($arr)-1;
foreach($arr as $k=> $v)
{
$vtype="unhtml";
if(is_array($v))
{
$vtype=@$v[1];
$v=$v[0];
}
if($method=='post')
{
$_POST[$v]=isset($_POST[$v])?trim($_POST[$v]):"";
if(is_int($_POST[$v]))
{
$_POST[$v]=intval($_POST[$v]);
}elseif(is_float($_POST[$v]))
{
$_POST[$v]=floatval($_POST[$v]);
}elseif(is_string($_POST[$v]))
{
//等于1 为保存html 默认不保存html
if($vtype=="unhtml")
{
$_POST[$v]=htmlspecialchars($_POST[$v]);
}elseif($vtype=="int")
{
$_POST[$v]=@intval($_POST[$v]);
}elseif($vtype=='float')
{
$_POST[$v]=@floatval($_POST[$v]);
}
}
$var.= "$v = '$_POST[$v]' ".($k<$ct?",":"");
}else
{
$_GET[$v]=isset($_GET[$v])?trim($_GET[$v]):"";
if(is_int($_GET[$v]))
{
$_GET[$v]=intval($_GET[$v]);
}elseif(is_float($_GET[$v]))
{
$_GET[$v]=floatval($_GET[$v]);
}elseif(is_string($_GET[$v]))
{
//等于1 为保存html 默认不保存html
if($vtype=='unhtml')
{
$_GET[$v]=htmlspecialchars($_GET[$v]);
}elseif($vtype=='int')
{
$_GET[$v]=intval($_GET[$v]);
}elseif($vtype=='float')
{
$_GET[$v]=floatval($_GET[$v]);
}
}
$var .="$v= '$_GET[$v]' ".($k<$ct?",":"");
}
}
$sql.=$var;
//解析 where
$ct=count($where)-1;
if(!empty($where)) $w=" where ";
foreach($where as $k=> $v)
{
$vtype="unhtml";
if(is_array($v))
{
$vtype=@$v[1];
$v=$v[0];
}
if($method=='post')
{
$_POST[$v]=isset($_POST[$v])?trim($_POST[$v]):"";
if(is_int($_POST[$v]))
{
$_POST[$v]=intval($_POST[$v]);
}elseif(is_float($_POST[$v]))
{
$_POST[$v]=floatval($_POST[$v]);
}elseif(is_string($_POST[$v]))
{
//等于1 为保存html 默认不保存html
if($vtype=="unhtml")
{
$_POST[$v]=htmlspecialchars($_POST[$v]);
}elseif($vtype=="int")
{
$_POST[$v]=@intval($_POST[$v]);
}elseif($vtype=='float')
{
$_POST[$v]=@floatval($_POST[$v]);
}
}
$w.= "$v = '$_POST[$v]' ".($k<$ct?" and ":"");
}else
{
$_GET[$v]=isset($_GET[$v])?trim($_GET[$v]):"";
if(is_int($_GET[$v]))
{
$_GET[$v]=intval($_GET[$v]);
}elseif(is_float($_GET[$v]))
{
$_GET[$v]=floatval($_GET[$v]);
}elseif(is_string($_GET[$v]))
{
//等于1 为保存html 默认不保存html
if($vtype=='unhtml')
{
$_GET[$v]=htmlspecialchars($_GET[$v]);
}elseif($vtype=='int')
{
$_GET[$v]=intval($_GET[$v]);
}elseif($vtype=='float')
{
$_GET[$v]=floatval($_GET[$v]);
}
}
$w .="$v= '$_GET[$v]' ".($k<$ct?" and ":"");
}
}
$sql.=$w;
$this->query($sql);
}

相关文章

php实现修改新闻时删除图片的方法

本文实例讲述了php实现修改新闻时删除图片的方法。分享给大家供大家参考。具体实现方法如下: //old_contents:待修改的公告内容; //$content:修改后的公告内容...

PHPWind与Discuz截取字符函数substrs与cutstr性能比较

PHPWind与Discuz截取字符函数substrs与cutstr性能比较

以掌握使用Benchmark_Iterate类工具的方法。 目录 一,什么是PEAR与Benchmark 二,性能比较代码准备与调试 三,性能比较测试结果 四,性能比较测试总结 五,附性...

PHP获取一年中每个星期的开始和结束日期的方法

本文实例讲述了PHP获取一年中每个星期的开始和结束日期的方法。分享给大家供大家参考。具体分析如下: 最近项目中需要做个提交周报的功能,需要知道指定周数的开始日期和结束日期,以便处理其他业...

php使用curl简单抓取远程url的方法

本文实例讲述了php使用curl抓取远程url的方法。分享给大家供大家参考。具体如下: cURL是一个非常有用的php库,可以用来连接不通类型的服务器和协议,下面是一个最基本的范例用来抓...

php获取英文姓名首字母的方法

本文实例讲述了php获取英文姓名首字母的方法。分享给大家供大家参考。具体如下: 这段代码可以根据用户输入的英文姓名,分析出姓名的首字母输出,比如"Billy Bob" to "B.B."...