浅谈PHP值mysql操作类
来源: 阅读:592 次 日期:2016-08-16 15:05:39
温馨提示: 小编为您整理了“浅谈PHP值mysql操作类”,方便广大网友查阅!

下面小编就为大家带来一篇浅谈PHP值mysql操作类。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。

浅谈PHP值mysql操作类

/**

* Created by PhpStorm.

* User: Administrator

* Date: 2016/6/27

* Time: 18:55

*/

Class Mysqls{

private $table; //表

private $opt;

public function __construct($host,$user,$pwd,$name,$table_names)

{

$this->db=new mysqli($host,$user,$pwd,$name); //数据库连接

if(mysqli_connect_errno()){

echo "数据库连接错误".mysqli_connect_errno();

exit();

}

$this->db->query("set names utf8");

$this->table=$table_names;

$this->opt['field']="*";

$this->opt['where']=$this->opt['Order']=$this->opt['Limit']=$this->opt['Group']='';

// var_dump($this->opt['where']);

//$this->M($table_names);

}

//数据库连接

// protected function M($table_name){

// $this->db=new mysqli(DBHOST,DBUSER,DBPWD,DBNAME);

//

// if(mysqli_connect_errno()){

// echo "数据库连接错误".mysqli_connect_errno();

// exit();

// }

// $this->db->query("set names utf8");

// $this->table=$table_name;

// }

//表中的字段

public function tbField(){

$desc=$this->db->query("DESC {$this->table}");

$fieldArr=array();

while(($row=$desc->fetch_assoc())!=false){

$fieldArr[]=$row['Field'];

}

// var_dump($fieldArr);

return $fieldArr;

}

//查询字段

public function field($filed){

//拆分字段

$filedArr=is_string($filed)?explode(",",$filed):$filed;

if(is_array($filedArr)){

$filed='';

foreach($filedArr as $v){

$filed.="'".$v."'".",";

}

}

//var_dump($filed);

return rtrim($filed,",");

}

//判断字段是否存在

public function isfield($fileds)

{

$filedArr=is_string($fileds)?explode(",",$fileds):$fileds;

$tbFiled=$this->tbField();

//var_dump( $tbFiled);

foreach($filedArr as $v){

if(!in_array($v,$tbFiled)){

echo "字段输入发错";

}

}

}

//条件语句

public function where($where){

$this->opt['where']=is_string($where)?" WHERE {$where}":"不是字符串";

return $this;

}

//Limit

public function Limit($limit){

$this->opt['Limit']=is_string($limit)?" Limit {$limit}":"不是字符串";

return $this;

}

public function Order($order){

$this->opt['Order']=is_string($order)?" Order By {$order}":"不是字符串";

return $this;

}

public function Group($group){

$this->opt['Group']=is_string($group)?" Group BY {$group}":"不是字符串";

return $this;

}

// 查询字符串

public function select(){

$sql="select * from {$this->table} {$this->opt['where']} {$this->opt['Group']} {$this->opt['Limit']} {$this->opt['Order']}";

return $this->fetch($sql);

}

//结果集查询

public function fetch($sql){

$result=$this->db->query($sql);

$sqlarr=array();

while(($row=$result->fetch_assoc())!=false){

$sqlarr[]=$row;

}

// var_dump($sqlarr);

return $sqlarr;

}

//无结果集查询

public function querys($sql){

$sqls=$this->db->query($sql);

return $this->db->affected_rows;

}

//删除语句

public function delete($where=array()){

if($where=="" && empety($this->opt['where'])) die(" 不能为空");

if($where!=""){

if(is_array($where)){

$where=implode(",",$where);

}

$this->opt['where']=" WHERE id IN({$where})";

}

$sql="delete from {$this->table} {$this->opt['where']} {$this->opt['Limit']}";

var_dump($sql);

//return $this->query($sql);

}

//数组键名

public function key($key){

if(!is_array($key))die("非法数组");

$keys="";

foreach($key as $v){

$keys.=$v.",";

}

return rtrim($keys,",");

}

//数组值

public function value($value){

if(!is_array($value))die("非法数组");

$strvalue="";

foreach($value as $v){

$strvalue.="'".$v."'".",";

}

return rtrim($strvalue,",");

}

//添加语句

public function add($filed){

if(!is_array($filed)) die("非法数组");

$fileds=$this->key(array_keys($filed)); //返回数组中的键名

//var_dump($fileds);

$values=$this->value(array_values($filed));

$sql="insert into {$this->table}({$fileds})VALUES($values)";

//var_dump($sql);

return $this->querys($sql);

}

//查找单条记录

public function find($field,$id){

$sql="select {$this->opt['field']} from {$this->table} {$this->where($field.'='."'".$id."'")}";

var_dump($sql);

return $this->fetch($sql);

}

//更新语句

public function save($arrs){

if(!is_array($arrs))die("非法的数组");

//if(empty($this->opt['where']))die("条件不能为空");

$str="";

while(list($k,$v)=each($arrs))

{

$str="{$k}="."'{$v}',";

}

$str=rtrim($str,",");

$sql="Update {$this->table} set {$str}{$this->opt['where']}";

return $this->querys($sql);

}

//获取总记录数

public function counts(){

$sql="select 'id' from {$this->table}{$this->opt['where']}";

//var_dump($sql);

return $this->querys($sql);

}

}

$db=new Mysqls('127.0.0.1','root','','mysql','user');

写的一部分有问题 参考了别人一部分。

以上就是小编为大家带来的浅谈PHP值mysql操作类全部内容了

更多信息请查看 网络编程
手机网站地址: 浅谈PHP值mysql操作类
由于各方面情况的不断调整与变化, 提供的所有考试信息和咨询回复仅供参考,敬请考生以权威部门公布的正式信息和咨询为准!
关于我们| 联系我们| 人才招聘| 网站声明| 网站帮助| 非正式的简要咨询| 简要咨询须知| 加入群交流| 手机站点| 投诉建议
工业和信息化部备案号:滇ICP备2023014141号-1 云南省教育厅备案号:云教ICP备0901021 滇公网安备53010202001879号 人力资源服务许可证:(云)人服证字(2023)第0102001523号
云南网警备案专用图标
联系电话:0871-65317125(9:00—18:00) 获取招聘考试信息及咨询关注公众号:
咨询QQ:526150442(9:00—18:00) 版权所有:
云南网警报警专用图标
Baidu
map