MysqlLi

1、MySQLi相对于MySQL的优势

image.png

2、MySQLi扩展的安装

image.png

3、验证扩展是否开启

phpinfo();  // 可以查看扩展是否开启
image.png

检测是否加载

var_dump(extension_loaded("mysqli")); // 检测扩展是否加载 返回真或者假

检测扩展中的函数

var_dump(function_exists("mysqli_connect"));    // 检测扩展中某个函数是否存在来验证扩展是否加载

得到当前开启的扩展

print_r(get_loaded_extensions());   // 得到当前开启的扩展

4、基于面向对象使用MySQLi

    // 1、建立到MySQL的连接
    $mysqli = new mysqli('localhost','root','');
    // 2、选择操作的数据库
    $mysqli->select_db('article');
    print_r($mysqli);
    if ($mysqli->connect_errno){
        // 如果错误编号大于0 则结束
        die('Connect Error:'.$mysqli->connect_error);
    }

5、获取客户端信息

echo "客户端的信息:".$mysqli->client_info."<br />";
echo $mysqli->get_client_info()."<br />";
echo "客户端的版本:".$mysqli->client_version."<br />";
image.png

6、获取服务端信息

echo "服务端的信息:".$mysqli->server_info."<br />";
echo $mysqli->get_server_info()."<br />";
echo "服务端的版本:".$mysqli->server_info."<br />"; 
image.png

7、设置客户端编码方式utf-8

// 设置客户端编码方式utf-8
$mysqli->set_charset("utf-8");

8、select/desc/describe/show/explain执行成功返回mysqli_result对象,执行失败返回false,对于其他的sql语句 执行成功返回true,失败返回false

9、获取全部记录

    $rows = $mysqli_result->fetch_all();    // 获取结果集中所有记录,默认返回的是二维索引+索引的形式
    $rows = $mysqli_result->fetch_all(MYSQLI_NUM);  // 获取结果集中所有记录,默认返回的是二维索引的形式
    $rows = $mysqli_result->fetch_all(MYSQLI_ASSOC);    // 二维关联数组
    $rows = $mysqli_result->fetch_all(MYSQLI_BOTH); // 二维索引+关联数组

10、获取单条记录

    $row = $mysqli_result->fetch_row(); // 取结果集中的一条记录作为索引数组返回
    $row = $mysqli_result->fetch_assoc();   // 取结果集中的一条记录作为关联数组返回
    $row = $mysqli_result->fetch_array();   // 取结果集中的一条记录作为索引+关联数组返回
    $row = $mysqli_result->fetch_array(MYSQLI_ASSOC);   // 取结果集中的一条记录作为关联数组返回

    $row = $mysqli_result->fetch_object();  //

11、移动指针位置

$mysqli_result->data_seek(0);    // 0表示指针移动到指向第一条的位置

12、实现多条语句操作

    header("content-type:text/html;charset=utf-8");
    $mysqli = new mysqli('localhost','root','','article');
    if ($mysqli->errno){
        die("CONNECT ERROR:".$mysqli->error);
    }
    $mysqli->set_charset("utf8");
    $sql= "insert into user(username,age) values('imooc2',11);";
    $sql .= "update user set age = 100 where id = 2";
    // 针对多条sql语句的查询
    $res = $mysqli->multi_query($sql);
    var_dump($res);

13、执行多条查询语句处理多个结果集

    $sql = "select id,username,age from user;";
    $sql.= "select * from user;";
    // user_result()/store_result 先获得第一个结果集
    // more_results():检测是否有更多的结果集
    // next_result():将结果集指针向下移动一位
    if ($mysqli->multi_query($sql)){
        do{
            if ($mysql_result=$mysqli->store_result()){
                $rows[]=$mysql_result->fetch_all(MYSQLI_ASSOC);
            }
        }while($mysqli->more_results() && $mysqli->next_result());
    }else {
        echo $mysqli->error;
    }

14、实现预处理

    $sql = "insert user(username,age) values(?,?);";
    // 准备预处理语句
    $mysqli_stmt = $mysqli->prepare($sql);
    $username = 'king';
    $age = 23;
    // 绑定参数
    $mysqli_stmt->bind_param('si',$username,$age);
    // 执行预处理语句
    if ($mysqli_stmt->execute()){
        echo $mysqli_stmt->insert_id;
    }else {
        $mysqli_stmt->error;
    }

15、执行事务

image.png
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 215,539评论 6 497
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,911评论 3 391
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 161,337评论 0 351
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,723评论 1 290
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,795评论 6 388
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,762评论 1 294
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,742评论 3 416
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,508评论 0 271
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,954评论 1 308
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,247评论 2 331
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,404评论 1 345
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,104评论 5 340
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,736评论 3 324
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,352评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,557评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,371评论 2 368
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,292评论 2 352

推荐阅读更多精彩内容