【发布时间】:2017-02-05 16:25:08
【问题描述】:
我将我的服务器更新为新的 PHP 7,因为到目前为止我使用的是 PHP 5。 但是数据库类不再工作了,所以我想将 MySql 函数转换为 Mysqli。 我想将此功能修改为mysqli,有人可以帮我吗? 谢谢
function query($s='',$rows=false,$organize=true) {
if (!$q=mysql_query($s,$this->con)) return false;
if ($rows!==false) $rows = intval($rows);
$rez=array(); $count=0;
$type = $organize ? MYSQL_NUM : MYSQL_ASSOC;
while (($rows===false || $count<$rows) && $line=mysql_fetch_array($q,$type)) {
if ($organize) {
foreach ($line as $field_id => $value) {
$table = mysql_field_table($q, $field_id);
if ($table==='') $table=0;
$field = mysql_field_name($q,$field_id);
$rez[$count][$table][$field]=$value;
}
} else {
$rez[$count] = $line;
}
++$count;
}
if (!mysql_free_result($q)) return false;
return $rez;
}
MySqli 版本(但不完整):
function query($s='',$rows=false,$organize=true) {
if (!$q=mysqli_query($this->con,$s)) return false;
if ($rows!==false) $rows = intval($rows);
$rez=array(); $count=0;
$type = $organize ? MYSQLI_NUM : MYSQLI_ASSOC;
while (($rows===false || $count<$rows) && $line=mysqli_fetch_array($q,$type)) {
if ($organize) {
foreach ($line as $field_id => $value) {
$table = mysql_field_table($q, $field_id);
if ($table==='') $table=0;
$field = mysqli_fetch_field_direct($q,$field_id)->name;
$rez[$count][$table][$field]=$value;
}
} else {
$rez[$count] = $line;
}
++$count;
}
if (!mysqli_free_result($q)) return false;
return $rez;
}
感谢您的帮助。
【问题讨论】:
-
具体是什么问题?
-
请添加您实际遇到的问题以及与之相关的所有相关信息。目前,这听起来像是“请为我做这件事”。
-
PHP 手册可以帮助您转换此函数/方法...