PHP基础 —— mysqli学习

建立,关闭与MySQL服务器的连接

MySQLi 扩展的功能概述

连接指定的mysql服务器

$mysqli_content = mysqli_connect($host,$user,$password,$database,$port,$socket)

$host —— ip地址,服务器的地址
$user —— 用户名,root
$password —— MySQL的密码
$database —— 数据库
$port —— 端口号,一般默认3306
$socket —— 使用很少,基本不用
<?php
    $link = @mysqli_connect('localhost','root','root','php1',3306);
?>

//由于会出现错误,为防止错误信息直接暴露在页面,可以使用@屏蔽错误

连接错误时的提示

int mysqli_connect_errno();
// 返回最后一次连接调用的错误代码

string mysqli_content_error();
//返回一个字符串描述的最后一次连接调用的错误代码

密码或用户名错误的报错:

echo mysqli_connect_error();
//Access denied for user 'root'@'localhost' (using password: YES)

echo mysqli_connect_errno($link);
//1045

0 —— 表示连接成功

设置默认字符编码

bool mysqli_set_charset(mysqli $link , string $charset);

设置成功返回 true

mysqli_set_charset($link,'GBK');
mysqli_set_charset($link,'utf8');//注意 utf-8 省略 ‘-’

选择特定的数据库

bool mysqli_select_db(mysqli $link,string $dbname);

$link —— 建立的连接,mysqli_connect()
$abname —— 数据库名称

当没有指定数据库时,可以用此函数添加数据库

当指定数据库,需要切换数据库:

mysqli_select_db($link,$php2);

关闭与mysql服务器的连接

bool mysqli_close(mysqli $link);

$link —— 建立的连接,mysqli_connect()
mysqli_close($link);

执行mysql语句

mysqli_query()

在数据库中执行一条MySQL语句

mysqli_query(mysqli $link ,string $query,[int $resultmode =  MYSQLI_STORE_RESULT]);

$link —— 建立的连接,mysqli_connect()

$query —— 查询字符串

$resultmode —— 决定获取结果的方式,可取值:               
                 MYSQLI_USE_RESULT :mysqli_fetch_array()每次都要向server请求结果行,在执行MySQL时,并没有从server将结果取出
                 MYSQLI_STORE_RESULT :默认值(较常用的),具体结果一次性返回给客户端(PHP),相当于本地取数据

可选参数

  1. 对于delete,update,insert等不会返回数据的SQL语句,执行没有错误将返回true
    // 创建表
    $str = 'create table p3 (id int auto_increment primary key ,name varchar(10),class int(4),age int(3));';
    var_dump(mysqli_query($link,$str));//true

    // 添加数据
    $str = 'insert into p3 (name,class,age) values ("Yz",1526,25),("Zs",1506,20),("Ys",1515,22);';
    var_dump(mysqli_query($link,$str));//true

    // 删除表
    echo "<br>";
    $str = 'drop table p3;';
    var_dump(mysqli_query($link,$str));//true
  1. 对于返回数据的SQL语句,执行成功的时候返回结果 对象集合,可以使用操作结果 对象集合 的函数来从中获取数据
    // 查询
    $str = 'select * from p3';
    $result = mysqli_query($link,$str);
    var_dump($result);
    //object(mysqli_result)#2 (5) { ["current_field"]=> int(0) ["field_count"]=> int(4) ["lengths"]=> NULL ["num_rows"]=> int(3) ["type"]=> int(0) }

mysqli_real_query()

执行一个mysql查询

mysqli_real_query ( mysqli $link , string $query ) : bool

$link —— 建立的连接,mysqli_connect()
$query —— 查询字符串

返回值:成功时返回 true, 否则返回 false。

    $str = 'select * from p3';
    $result = mysqli_real_query($link,$str);
    var_dump($result);//true

若想获取数据,需要使用 mysqli_store_result()

mysqli_store_result()

转移上一次查询返回的 结果集合(对象集合)

mysqli_store_result ( mysqli $link, [ int $option ] ) : mysqli_result

$option —— 可以取值 : 
            MYSQLI_STORE_RESULT_COPY_DATA	将结果集从 mysqlnd 的内部缓冲区复制到 PHP 变量中
            默认情况下,mysqlnd 采取一种引用策略尽量避免在内容中复制多份同样的结果集。

例如:

    if(mysqli_real_query($link,$str))
    {
        $result = mysqli_store_result($link,MYSQLI_STORE_RESULT_COPY_DATA);
    }
    print_r($result);//mysqli_result Object ( [current_field] => 0 [field_count] => 4 [lengths] => [num_rows] => 3 [type] => 0 )

执行MySQL语句报错

int mysqli_errno(mysqli $link); —— 返回报错数字码
string mysqli_error(mysqli $link); —— 返回报错内容
$str = 'create table p3 (id int auto_increment primary key ,name varchar(10),class int(4),age int(3));';
var_dump(mysqli_query($link,$str));
    echo mysqli_errno($link).":".mysqli_error($link);//1050:Table 'p3' already exists , p3表已存在
$str = 'insert into p3  values ("Yz",25);';
var_dump(mysqli_query($link,$str));
    echo mysqli_errno($link).":".mysqli_error($link);//1136:Column count doesn't match value count at row 1 , 列数与第1行的值数不匹配

mysqli_multi_query()

一次性执行多条SQL语句,多条SQL语句用逗号分隔

mysqli_multi_query ( mysqli $link , string $query ) : bool

$query —— 多条SQL语句。

返回值:当第一条语句执行就返回true

mysqli_multi_query($link,"create table p2 (id int auto_increment primary key , class varchar(15));insert into p2 (class) values (20180612515),(20180612506),(20180612525);");
mysqli_next_result

为读取 multi_query 执行之后的下一个结果集做准备

mysqli_next_result ( mysqli $link ) : bool

mysqli_multi_query() 函数执行之后, 为读取下一个结果集做准备, 然后可以使用 mysqli_store_result() 或 mysqli_use_result() 函数读取下一个结果集。

操作结果 对象集合 的函数

mysqli_fetch_row()

以索引数组的方式获取一条记录

mixed mysqli_fetch_row(mysqli_result $result);

$result —— 查询到的结果,形成的对象集合

返回值为array,每次返回一行MySQL的数据,从左到右保存在数组中

索引值为数字,从左到右从0开始

print_r(mysqli_fetch_row($result));//Array ( [0] => 1 [1] => Yz [2] => 1526 [3] => 25 ) 
print_r(mysqli_fetch_row($result));//Array ( [0] => 2 [1] => Zs [2] => 1506 [3] => 20 )
print_r(mysqli_fetch_row($result));//Array ( [0] => 3 [1] => Ys [2] => 1515 [3] => 22 )

mysqli_fetch_assoc()

以关联数组的方式获取一条记录的数据

array mysqli_fetch_assoc(mysqli_result $result);

$result —— 查询到的结果,形成的对象集合

返回值为array,每次返回一行MySQL的数据,从左到右保存在数组中

索引值为MySQL表的列字段

print_r(mysqli_fetch_assoc($result));//Array ( [id] => 1 [name] => Yz [class] => 1526 [age] => 25 )
print_r(mysqli_fetch_assoc($result));//Array ( [id] => 2 [name] => Zs [class] => 1506 [age] => 20 ) 
print_r(mysqli_fetch_assoc($result));//Array ( [id] => 3 [name] => Ys [class] => 1515 [age] => 22 )

mysqli_fetch_array()

以索引数组或关联数组的方式获取一条记录

mixed mysqli_fetch_array(mysqli_result $result,[$resulttype =  MYSQLI_BOTH]);

$result —— 查询到的结果,形成的对象集合
$resulttype —— 可取值为:
             MYSQLI_ASSOC :索引值为 MySQL列字段
             MYSQLI_NUM : 索引值为数字
             MYSQLI_BOTH : 默认值,索引值为数字和MySQL列字段

返回值为array,每次返回一行MySQL的数据,从左到右保存在数组中

默认情况下 —— 索引值为数字和MySQL列字段,每行每列先存储数字索引,然后是MySQL列字段索引,接着下一列······

print_r(mysqli_fetch_array($result));//Array ( [0] => 1 [id] => 1 [1] => Yz [name] => Yz [2] => 1526 [class] => 1526 [3] => 25 [age] => 25 )
    
print_r(mysqli_fetch_array($result,MYSQLI_NUM));//Array ( [0] => 2 [1] => Zs [2] => 1506 [3] => 20 ) 
    
print_r(mysqli_fetch_array($result,MYSQLI_ASSOC));//Array ( [id] => 3 [name] => Ys [class] => 1515 [age] => 22 )

mysqli_fetch_all()

以索引数组或关联数组的方式获取全部记录的数据

mixed mysqli_fetch_all ( mysqli_result $result [, int $resulttype = MYSQLI_NUM ] ) ;

$result —— 查询到的结果,形成的对象集合
$resulttype —— 可取值为:
             MYSQLI_ASSOC :索引值为 MySQL列字段
             MYSQLI_NUM : 索引值为数字
             MYSQLI_BOTH : 默认值,索引值为数字和MySQL列字段

返回值查询结果的所有数据,每一行组成一个数组,所有行组成一个二维数组

索引值为MySQL列字段

print_r(mysqli_fetch_all($result,MYSQLI_ASSOC));
//Array ( [0] => Array ( [id] => 1 [name] => Yz [class] => 1526 [age] => 25 ) [1] => Array ( [id] => 2 [name] => Zs [class] => 1506 [age] => 20 ) [2] => Array ( [id] => 3 [name] => Ys [class] => 1515 [age] => 22 ) )

索引值为数字,默认情况

//print_r(mysqli_fetch_all($result));
print_r(mysqli_fetch_all($result,MYSQLI_NUM));
//Array ( [0] => Array ( [0] => 1 [1] => Yz [2] => 1526 [3] => 25 ) [1] => Array ( [0] => 2 [1] => Zs [2] => 1506 [3] => 20 ) [2] => Array ( [0] => 3 [1] => Ys [2] => 1515 [3] => 22 ) )

索引值为数字和MySQL列字段,每行每列先存储数字索引,然后是MySQL列字段索引,接着下一列······

print_r(mysqli_fetch_all($result,MYSQLI_BOTH));
//Array ( [0] => Array ( [0] => 1 [id] => 1 [1] => Yz [name] => Yz [2] => 1526 [class] => 1526 [3] => 25 [age] => 25 ) [1] => Array ( [0] => 2 [id] => 2 [1] => Zs [name] => Zs [2] => 1506 [class] => 1506 [3] => 20 [age] => 20 ) [2] => Array ( [0] => 3 [id] => 3 [1] => Ys [name] => Ys [2] => 1515 [class] => 1515 [3] => 22 [age] => 22 ) )

mysqli_fetch_filed()

返回集合中的下一个字段信息

object mysqli_fetch_filed(mysqli_result $result);
    $str = 'select id num,name byte,class grade,age egg from p3 php3';
    $result = mysqli_query($link,$str);
    print_r(mysqli_fetch_field($result));
    //stdClass Object ( [name] => num [orgname] => id [table] => php3 [orgtable] => p3 [def] => [db] => php1 [catalog] => def [max_length] => 1 [length] => 11 [charsetnr] => 63 [flags] => 49667 [type] => 3 [decimals] => 0 )

返回值:

  • name —— 列的别名,查询时声明的
  • orgname —— 原始列名
  • table —— 表的别名,查询时声明的
  • orgtable ——原始表名
  • def —— 保留默认值,当前始终为“”
  • db —— 数据库的名称
  • catlog —— 目录名,总是“def”(因为PHP 5.3.6)
  • max_length —— 结果集的字段的最大宽度。
  • length —— 在表定义中指定的字段宽度。
  • charsetnr —— 字段的字符集编号。
  • flags —— 表示该字段的位标志的整数。
  • type —— 用于此字段的数据类型
  • decimals —— 使用的小数位数(用于整数字段)

获取对象集合中的数据:
每次返回一列字段信息

$object = mysqli_fetch_field($result);
    
echo $object->name;//num
echo $object->orgtable;//p3

mysqli_fetch_fileds()

返回表中所有字段的对象数组,组成一个结果集合

array mysqli_fetch_fileds(mysqli_result $result);
print_r(mysqli_fetch_fields($result));
// Array ( [0] => stdClass Object ( [name] => num [orgname] => id [table] => p3 [orgtable] => p3 [def] => [db] => php1 [catalog] => def [max_length] => 1 [length] => 11 [charsetnr] => 63 [flags] => 49667 [type] => 3 [decimals] => 0 ) 
//         [1] => stdClass Object ( [name] => byte [orgname] => name [table] => p3 [orgtable] => p3 [def] => [db] => php1 [catalog] => def [max_length] => 2 [length] => 30 [charsetnr] => 33 [flags] => 0 [type] => 253 [decimals] => 0 ) 
//         [2] => stdClass Object ( [name] => grade [orgname] => class [table] => p3 [orgtable] => p3 [def] => [db] => php1 [catalog] => def [max_length] => 4 [length] => 4 [charsetnr] => 63 [flags] => 32768 [type] => 3 [decimals] => 0 ) 
//         [3] => stdClass Object ( [name] => egg [orgname] => age [table] => p3 [orgtable] => p3 [def] => [db] => php1 [catalog] => def [max_length] => 2 [length] => 3 [charsetnr] => 63 [flags] => 32768 [type] => 3 [decimals] => 0 ) )

获取数据(先以数组方式获取对象集合,然后利用对象获取数据):

    $object =mysqli_fetch_fields($result);
    for($i=0;$i<=3;$i++){
        echo $object[$i]->orgname.',';
        //id,name,class,age,
    }

mysqli_num_rows()

获取结果中行的数量

int mysqli_num_rows(mysqli_result $result);
echo(mysqli_num_rows($result));//3

使用mysqli_query()设置参数MYSQLI_USE_RESULT模式必须在获取完结果集才可以使用此函数

    $str = 'select id num,name byte,class grade,age egg from p3';
    $result = mysqli_query($link,$str,MYSQLI_USE_RESULT);
    print_r(mysqli_fetch_assoc($result));//第一行
    echo(mysqli_num_rows($result));//报错
    print_r(mysqli_fetch_assoc($result));//第二行
    echo(mysqli_num_rows($result));//报错
    print_r(mysqli_fetch_assoc($result));//第三行
    echo(mysqli_num_rows($result));//报错
    print_r(mysqli_fetch_assoc($result));
    echo(mysqli_num_rows($result));//3

释放对象集合

返回的结果集合在数据量较大的时候需要很多的内存支持,所以需要在操作完结果集合之后释放其所占的内存,释放之后,结果集不可以

void mysqli_free_result(mysqli_result $result);

例如:

mysqli_free_result($result);
echo(@mysqli_num_rows($result));//会报错

其他常用函数

mysqli_affected_rows()

获取上一个MySQL操作中受影响的行数

mysqli_affected_rows ( mysqli $link ) : int

例如:

//改变了第二行数据,影响了第一行
    $str = 'update p3 set name = "zhao" where id = 2;';
    if(mysqli_query($link,$str))
    {
        echo mysqli_affected_rows($link);//1
    }

mysqli_insert_id()

获取从之前的insert操作生成的ID

mysqli_stmt_insert_id ( mysqli $link ) : mixed
    $str = 'insert p3 values (10,"ws",1506,20);';
    if(mysqli_query($link,$str))
    {
        echo mysqli_insert_id($link);//10
    }

mysqli_real__string

转义用于SQL语句中的特殊字符,防止SQL语句出错

mysqli_real_escape_string ( mysqli $link , string $escapestr ) : string


$escapest —— 需要转义的字符串

返回值 : 转义后的字符串。

也可以使用

addslashes(string $escapestr) : string
    $s = <<<end
    "dwdw"wdw"wdwd;"dw'q'd"d'w@dW"wdwq"
    end;
    $s = mysqli_real_escape_string($link,$s);
    // $s = addslashes($s);
    // echo $s;
    $str = "alter table p3 modify column name varchar(255);";
    mysqli_query($link,$str);
    $str = "insert into p3 (name,class,age) values ('{$s}',1506,20)";//刚开始设置的长度太小
    if(mysqli_query($link,$str))
    {
        echo $s;//\"dwdw\"wdw\"wdwd;\"dw\'q\'d\"d\'w@dW\"wdwq\"
    }
    else{
        //没有转义,会报错
        echo mysqli_errno($link).":".mysqli_error($link);
        //1064:You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '},1506,20)' at line 1
    }

预处理语言机制

针对重复执行相似语句的情况,可以将整个语句只向MySQL服务器发送一次,以后只改变参数,这样减少了需要传输的数据量,还提高了语句的处理效率

//连接数据库,并创建一个表
<?php
    //连接数据库
    $link = mysqli_connect('localhost','root','888888','php1',3306);
    if(mysqli_connect_errno($link)){
        echo mysqli_connect_error();
    }
    else{
        echo '连接成功';
    }
    mysqli_set_charset($link,'utf8');

    $query = "create table p4 (id int auto_increment primary key ,name varchar(25),class int)";
    if(mysqli_query($link,$query)){
        echo "表创建成功";
    }
    else{
        echo mysqli_errno($link).":".mysqli_error($link);
    }

mysqli_prepare()

准备执行一个 SQL 语句

准备SQL语句,存在占位符 ,来代表各种需要修改的数据

mysqli_prepare( mysqli $link,string $query)  : mysqli_stmt

mysqli_prepare() 返回一个 statement 对象,如果发生错误则返回 false。

$query = " insert into p4 (name , class) values (?,?) ";
$stmt = mysqli_prepare($link,$query);
print_r($stmt);
//mysqli_stmt Object ( [affected_rows] => 0 [insert_id] => 0 [num_rows] => 0 [param_count] => 2 [field_count] => 0 [errno] => 0 [error] => [error_list] => Array ( ) [sqlstate] => 00000 [id] => 1 )

报错类型

mysqli_stmt_errno ( mysqli_stmt $stmt ) : int
mysqli_stmt_error ( mysqli_stmt $stmt ) : string

mysqli_stmt_bind_param ()

将变量绑定到准备好的语句作为参数

即 stmt类型 的 绑定变量

mysqli_stmt_bind_param ( mysqli_stmt $stmt , string $types , mixed &$var1 [mixed &$... ] ) : bool

$stmt —— 一个 statement 对象

$type 取值:

CharacterDescription
i对应的变量具有整数类型
d对应的变量具有小数类型
s对应的变量具有字符串类型
b对应的变量是blob,将以数据包形式发送

&$var1 —— 与前边type对应,同时匹配 所对应的参量

返回值:成功时返回 true, 或者在失败时返回 false。

var_dump(mysqli_stmt_bind_param($stmt,'si',$val_1,$val_2));//true
$val_1 = "小明";
$val_2 = 31122110;

mysqli_stmt_execute()

执行准备好的 SQL语句

mysqli_stmt_execute ( mysqli_stmt $stmt ) : bool

返回值:成功时返回true ,否则false

var_dump(mysqli_stmt_execute($stmt));//true

多次执行,只需要赋值,并使用mysqli_stmt_execute()执行语句

$val_1 = "小双";
$val_2 = 31200000;
var_dump(mysqli_stmt_execute($stmt));//true

传参例子

//准备执行一条SQL语句
    $query = " insert into p4 (name , class) values (?,?) ";
    $stmt = mysqli_prepare($link,$query);
    
// 给? 绑定变量
    var_dump(mysqli_stmt_bind_param($stmt,'si',$val_1,$val_2));
//变量赋值
    $val_1 = "小明";
    $val_2 = 31122110;
//执行准备好的SQL语句
    var_dump(mysqli_stmt_execute($stmt));
//继续执行SQL语句
    $val_1 = "小双";
    $val_2 = 31200000;
    var_dump(mysqli_stmt_execute($stmt));

mysqli_stmt_bind_result()

将查询出的数据绑定到PHP变量

将变量绑定到准备好的语句以存储结果

mysqli_stmt_bind_result( mysqli_stmt $stmt , mixed &$var1 [mixed &$... ] ) : bool

返回值:成功时返回true ,否则false

    mysqli_stmt_bind_result($stmt,$id,$name,$class);
//要查询的字段都要加列出来

mysqli_stmt_fetch()

从一个prepare 语句中抓取结果到指定变量中

mysqli_stmt_fetch( mysqli_stmt $stmt ) : bool

返回值:成功时返回true ,否则false

mysqli_stmt_fetch($stmt);

查询例子

//准备一条SQL语句
    $query = "select * from p4 where id = ?";
    $stmt = mysqli_prepare($link,$query);
//绑定变量
    var_dump(mysqli_stmt_bind_param($stmt,"s",$val));
//执行准备好的SQL语句
    $val = 3;
    var_dump(mysqli_stmt_execute($stmt));
//将查询出的数据绑定到PHP变量
    mysqli_stmt_bind_result($stmt,$id,$name,$class);
//从一个prepare 语句中抓取结果到指定变量中
    mysqli_stmt_fetch($stmt);
//引用变量获取结果
    echo $id."-".$name."-".$class;
//结果:1-小明-31122110

改进方案:

查询到多条结果,进行输出

    $query = "select * from p4 where id < ?";
    $stmt = mysqli_prepare($link,$query);

    var_dump(mysqli_stmt_bind_param($stmt,"s",$val));

    $val = 3;
    if(mysqli_stmt_execute($stmt)){
        mysqli_stmt_bind_result($stmt,$id,$name,$class);
        while(mysqli_stmt_fetch($stmt))
        {
            echo "<br>".$id."-".$name."-".$class;
        }
    }
//结果:
//1-小明-31122110
//2-小明-31122110

    $val = 5;
    if(mysqli_stmt_execute($stmt)){
        mysqli_stmt_bind_result($stmt,$id,$name,$class);
        while(mysqli_stmt_fetch($stmt))
        {
            echo "<br>".$id."-".$name."-".$class;
        }
    }
//结果:
//1-小明-31122110
//2-小明-31122110
//3-小明-31122110
//4-小双-31200000

mysqli_stmt_result_metadata()

返回结果集合,配合相关函数,来可以获取字段的相关信息

mysqli_stmt_result_metadata(mysqli_stmt $stmt) : mysqli_result

返回值为集合对象,

配合使用的函数:

mysqli_num_fields()

mysqli_fetch_field()

mysqli_fetch_field_direct()

mysqli_fetch_fields()

mysqli_field_count()

mysqli_field_seek()

mysqli_field_tell()

mysqli_free_result()
    $query = "select * from p4 where id < ?";
    $stmt = mysqli_prepare($link,$query);

    var_dump(mysqli_stmt_bind_param($stmt,"s",$val));

    $val = 3;
    if(mysqli_stmt_execute($stmt)){
        $result = mysqli_stmt_result_metadata($stmt);
        print_r(mysqli_fetch_fields($result));
//Array ( [0] => stdClass Object ( [name] => id [orgname] => id [table] => p4 [orgtable] => p4 [def] => [db] => php1 [catalog] => def [max_length] => 0 [length] => 11 [charsetnr] => 63 [flags] => 49667 [type] => 3 [decimals] => 0 ) 
//        [1] => stdClass Object ( [name] => name [orgname] => name [table] => p4 [orgtable] => p4 [def] => [db] => php1 [catalog] => def [max_length] => 0 [length] => 75 [charsetnr] => 33 [flags] => 0 [type] => 253 [decimals] => 0 ) 
//        [2] => stdClass Object ( [name] => class [orgname] => class [table] => p4 [orgtable] => p4 [def] => [db] => php1 [catalog] => def [max_length] => 0 [length] => 11 [charsetnr] => 63 [flags] => 32768 [type] => 3 [decimals] => 0 ) )
    }

mysqli_stmt_store_result()

从准备好的语句传输结果集

mysqli_stmt_store_result ( mysqli_stmt $stmt ) : bool

$stmt ——  仅以过程化样式:由 mysqli_stmt_init() 返回的 statement 标识。

返回值:成功时返回true ,否则false

mysqli_stmt_num_rows()

返回语句结果集合的行数

mysqli_stmt_num_rows(mysqli_stmt $stmt ) : int
//查询有几条数据,需要mysqli_stmt_store_result($stmt)和mysqli_stmt_num_rows($stmt)配合使用

    $query = "select * from p4 where id < ?";
    $stmt = mysqli_prepare($link,$query);

    var_dump(mysqli_stmt_bind_param($stmt,"s",$val));

    $val = 3;
    if(mysqli_stmt_execute($stmt)){
        echo mysqli_stmt_store_result($stmt);//1
        echo mysqli_stmt_num_rows($stmt);//2
    }

mysqli_stmt_free_result()

释放给定语句处理存储的结果集合所占内存

mysqli_stmt_free_result ( mysqli_stmt $stmt ) : void

没有返回值

释放与该语句关联的结果内存,该内存由mysqli_stmt_store_result()分配。

mysqli_stmt_close()

关闭一个prepared语句,即关闭准备好的语句

mysqli_stmt_close ( mysqli_stmt $stmt ) : bool

返回值:成功时返回true ,否则false

var_dump(mysqli_stmt_close ($stmt ));
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值