php iquery

本文介绍了一个PHP函数iQuery,用于执行SQL查询并返回包括插入ID、受影响行数、查询结果及总行数等在内的多种结果。该函数支持单条或多条SQL语句,并能处理SQL_CALC_FOUND_ROWS类型的查询。

<?php
/**
*
*/
function iQuery($sql) {
$dbcon = mysqli_connect("localhost", "root", "159753", "radius");
if ($dbcon->connect_error) {
return false;
}
if (!is_array($sql)) {
$res = $dbcon->query($sql);
if ($res) {
$arr = [];
while ($item = $res->fetch_array()) {
array_push($arr, $item);
}
$ttr = null;
if (preg_match("/SQL_CALC_FOUND_ROWS/i", $sql)) {
$qttr = $dbcon->query("select found_rows()");
if ($qttr) {
while ($atom = $qttr->fetch_array()) {
$ttr = $atom[0];
}
}

}
return ["insert_id" => $dbcon->insert_id, "affected_rows" => $dbcon->affected_rows, "result" => $arr, "total_rows" => $ttr];
} else {
return false;
}
} else {
$rtn_arr = [];
foreach ($sql as $s) {
$res = $dbcon->query($s);
if ($res) {
$arr = [];
while ($item = $res->fetch_array()) {
array_push($arr, $item);
}
$ttr = null;
if (preg_match("/SQL_CALC_FOUND_ROWS/i", $sql)) {
$qttr = $dbcon->query("select found_rows()");
if ($qttr) {
while ($atom = $qttr->fetch_array()) {
$ttr = $atom[0];
}
}

}
array_push($rtn_arr, ["insert_id" => $dbcon->insert_id, "affected_rows" => $dbcon->affected_rows, "result" => $arr, "total_rows" => $ttr]);
} else {
return false;
}
}
return $rtn_arr;
}

}

?>

转载于:https://www.cnblogs.com/sky-view/p/4291450.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值