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

xiaoxiao2021-02-28  133

在使用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中一个函数同时返回多个值了。

转载请注明原文地址: https://www.6miu.com/read-18788.html

最新回复(0)