使用array和list实现在php中一个函数同时返回多个值

在使用php和mysqli操作数据库的时候,有的时候需要同时返回多个值。但是在php中并不能真正的同时返回多个值,这个时候就需要使用其他方式来实现。

最基本的有在查询的函数中(个人习惯把查询写成一个函数方便调用)使用global声明变量,然后再给每个需要返回的值单独声明变量最后再调用(说起来都麻烦)……

实际上可以用函数把多个数据返回为一个array数组,最后在需要使用这些数据的时候再用list将各个数据单独装载在变量中。

参考代码,返回多个数据为一个数组:

function SqlAdapter($area)
{
	// 创建连接
	$conn = mysqli_connect("", "", "", "");
	// 检查连接
	if (!$conn) {
	    die("连接失败: " . mysqli_connect_error());
	}
	//***********************************************************************
	$sqline = "SELECT * FROM test_1st WHERE area_name='".$area."'";
	$result = mysqli_query($conn, $sqline);
	if (mysqli_num_rows($result) > 0) 
	{
		// 输出数据
		while($row = mysqli_fetch_assoc($result)) 
		{
			$n = $row["n"];
			$aX = $row["areaX"];
			$aY = $row["areaY"];
			$pX = $row["positionX"];
			$pY = $row["positionY"];
			$sn = $row["sign"];
		}
		return array($n,$aX,$aY,$pX,$pY,$sign,$area);
	} 
	else 
	{
	    echo "参数错误!<br>";
	}
	mysqli_close($conn);
}

使用list将每个数据用不同的变量单独装载:

list($no,$areaX,$areaY,$positionX,$positionY,$sign,$area_name) = SqlAdapter($now_area);

这样就变相的实现了在php中一个函数同时返回多个值了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值