php操作MYSQL数据库自写的函数.

<?PHP
//返回数组结果
//$a=array('连接地址','登录名','登录密码','数据库名','端口');
//$a=array('127.0.0.1','root','123','mysql','3306');
//sqlrun($a,"select now();");
//sqlrun();
function sqlrun($cto=array('127.0.0.1','root','123','mysql','3306'),$sql="select now();")
{
	//1-连接
	$con=@mysqli_connect($cto[0],$cto[1],$cto[2],$cto[3],$cto[4]);
	//检查
	if(!$con)
	{
		echo "<br>连接未成功!!!".mysqli_connect_error();
		return false;
	}

	//2-设置连接字符集
	mysqli_set_charset($con,"utf8");

	//3-选择/更换/打开(USE)指定的数据库
	mysqli_select_db($con,$cto[3]);

	//4-执行SQL命令
	//$sql="show databases;";
	$re=@mysqli_query($con,$sql);
	//检测,如果命令失败
	if(!$re)
	{
		echo "<br>SQL命令执行失败/错误命令".mysql_error();
		//5-关闭连接
		mysqli_close($con);
		return false;
	}
			
	//5-关闭连接
	mysqli_close($con);
	//查看结果集类型
	//echo "<pre>";
	//var_dump($re);
	//echo "</pre>";

	//检测结果集的数据类型
	//有返回结果的是object对象类型.
	//select 等命令的返回结果是object
	//无返回结果的是boolean布尔类型
	//insert 等无返回的结果是boolean
	if(gettype($re)!='object')
	{
		echo "<br>SQL命令成功执行,只是没有返回结果,就到这里吧";
		// 释放结果集合
		mysqli_free_result($re);
		return true;
	}


	//将执行结果转存为二维数组返回
	//取得字段名存放在数组首行
	foreach(mysqli_fetch_fields($re) as $v)
	{
		$rearr[0][]=$v->name;
	}
	//取结果,此函数自动将结果集整理为数组,
	//等效在上面的字段名记录后上追加后面的数据.
	//array_merge()合并两个数组
	$rearr=array_merge($rearr,mysqli_fetch_all($re));
			
	// 释放结果集合
	mysqli_free_result($re);
	//查看返回数组
	//echo "<pre>";
	//print_r($rearr);
	//echo "</pre>";
	//echo "<br>成功!!!";

	return $rearr;
}
?>

猜你喜欢

转载自blog.csdn.net/ddv1999/article/details/79598061