首页 >php教程 >PHP源码 >简单的PHP MYSQL PDO操作类 mysql.class.php

简单的PHP MYSQL PDO操作类 mysql.class.php

PHP中文网
PHP中文网原创
2016-05-26 08:18:361205浏览

通过php pdo链接MYSQL数据库,进行简单的数据操作,我的网站[爱玩电脑 aowana.sinaapp.com],目前使用的就是这个类,如果该类更新会继续分享到oschina。

1. [代码]非常简单的PHP通过PDO操作MYSQL类 mysql.class.php    

<?php
/**
 * MySQL操作类
 * http://www.php.cn/
 * 日期:2015-04-01
 */
class mysql
{
	public $pdo = null;
	public $results = null;

	public function find($sql, $array=array())
	{
		$ok = $this->process($sql, $array);
		if ($ok)
		{
			$this->results->setFetchMode(PDO::FETCH_ASSOC);
			$data = $this->results->fetch();
			return $data;
		}
		else
		{
			return false;
		}
	}

	public function finds($sql, $array=array())
	{
		$ok = $this->process($sql, $array);
		if ($ok)
		{
			$this->results->setFetchMode(PDO::FETCH_ASSOC);
			$data = $this->results->fetchAll();
			return $data;
		}
		else
		{
			return array();
		}
	}

	public function update($sql, $array=array())
	{
		$ok = $this->process($sql, $array);
		if ($ok === false)
			return -1;//执行出错返回-1
		else if ($ok)
			return $this->results->rowCount();
		else
			return 0;
	}

	public function insert($sql, $array=array())
	{
		$ok = $this->process($sql, $array);
		if ($ok)
		{
			$id = $this->pdo->lastInsertId();
			$id = $id ? $id : 1;
			return $id;
		}
		else
		{
			return false;
		}
	}

	public function delete($sql, $array=array())
	{
		$ok = $this->process($sql, $array);
		if ($ok === false)
			return -1;//执行出错返回-1
		else if ($ok)
			return $this->results->rowCount();
		else
			return 0;
	}

	public function query($sql, $array=array())
	{
		return $this->process($sql, $array);
	}

	private function process($sql, $array)
	{
		if (is_null($this->pdo))
			$this->connect();
		$this->results = $this->pdo->prepare($sql);
		//print_r($this->pdo->errorInfo());
		//print_r($this->results->errorInfo());
		return $this->results->execute($array);
	}

	private function connect()
	{
		try
		{
			$this->pdo = new PDO(&#39;mysql:host=&#39; . MYSQL_HOST . &#39;;port=&#39; . MYSQL_PORT . &#39;;dbname=&#39; . MYSQL_DATABASE . &#39;;charset=utf8&#39;, MYSQL_USERNAME, MYSQL_PASSWORD);
		}
		catch (PDOException $error)
		{
			$html = $error->getMessage();
			//SAE Mail to Master
			http503();
		}
	}
}

                   

                   

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn