(操作系统 Centos7,环境版本 php7)

01,进入到 PHP 解压后的源码包的的 ext 文件夹

02,查看是否存在 mysqli 扩展 => ls, 如果不存在需要去响应网站下载 (百度 Google 下载)

03,这里既是所有 PHP 官方提供的扩展,进入到 mysqli 目录 => cd mysqli

04,执行命令 => phpize

05,如果出现以上错误可以用 yum 安装依赖 => yum -y install autoconf => phpize

06,配置编译参数 ./configure --with-mysqli=mysqlnd  这里要求你必须先安装了 mysqlnd

07,配置完成后编译扩展 => make

08,如果出现以上错误,将 mysqli_api.c 文件第 36 行的代码中的相对路径修改成如下的绝对路径

09,比较新一点 php 版本如果扩展编译时使用默认路径,那么也可以这样配置,这种配置的好处是迁移时不需要修改

10,再次执行 make => make install,出现如下界面为编译安装成功

11,以上返回的路径便是扩展安装的路径,记住红框内的路径,查看模块是否安装成功

ls /root/software/php/lib/php/extensions/no-debug-non-zts-20170718/

12,以上的 mysqli.so 就是 mysqli 扩展

13,修改配置文件 php.ini ( 如果找不到,请移步 https://www.cnblogs.com/lovling/p/9301851.html )

14,在文件的最后添加如下代码,右边的路径就是 mysqli.so 所在的路径

15,重启 php-fpm 或者 httpd (根据自己的环境选择)

16,随意访问一个写有 <?php phpinfo() ?> 的文件,出现以下画面为安装成功

 17,一个简单的利用 mysqli 做查询的数据路例子

<?php
/**
* 准备数据库连接参数,地址,账号,密码,具体库名称
*/
$host = "192.168.200.100:3306";
$user = "root";
$password = "920619";
$dbname = "test"; /**
* 实例化 mysqli 对象
*/
$mysqli = new mysqli($host, $user, $password, $dbname); /**
* 设置查询结果数字类型的字段不会被自定转化为字符串类型
* 该方法要求 mysqli 扩展在安装时必须使用 mysqlnd 依赖
* 设置编码防止乱码,互联网开发常用为 utf8 编码
*/
$mysqli -> options(MYSQLI_OPT_INT_AND_FLOAT_NATIVE, true);
$mysqli-> set_charset("utf8"); /**
* 检测数据库连接是否有错,一切正常时 connect_errno 为 0
* 当发生错误时,connect_error 记录了错误信息
*/
if ($mysqli -> connect_errno != 0) echo $mysqli -> connect_error; /**
* 准备一个 SQL 语句并执行,返回结果集
*/
$sql = "SELECT * FROM user";
$mysqli_result = $mysqli -> query($sql); /**
* 获取查询结果返回一个关联数组,常量参数解析如下
* MYSQLI_NUM 返回常规数组 (拒绝)
* MYSQLI_ASSOC 返回关联数组 (推荐)
* MYSQLI_BOTH 返回混合数组 (默认)
*/
$result = $mysqli_result -> fetch_all(MYSQLI_ASSOC); /**
* 关闭 mysqli 对象从而关闭数据库连接
*/
$mysqli -> close(); /**
* 打印查询结果的详细信息
*/
var_dump($result);

PHP 扩展在 Linux(centos7)系统下的编译与安装 以 mysqli 为例的更多相关文章

  1. Linux centos7系统下svn的安装与配置

    一.安装svn # yum -y install svn 二.查看svn版本信息 # svnserve --version 三.搭建svn版本库(假设项目名称为project) 1.首先创建版本库目录 ...

  2. Linux centos7环境下安装JDK的步骤详解

    Linux centos7环境下安装JDK的步骤详解 测试root用户下JAVA版本 输入命令:   java –version 1.先到Oracle官网里下载好jdk,网址如下: http://ww ...

  3. linux centos7环境下安装apache2.4+php5.6+mysql5.6 安装及踩坑集锦

    linux centos7环境下安装apache2.4+php5.6+mysql5.6 安装及踩坑集锦(一) 一.Linux下安装MySQL 1.下载 下载地址:http://dev.mysql.co ...

  4. linux centos7环境下安装apache2.4+php5.6+mysql5.6 安装及踩坑集锦(二)

    linux centos7环境下安装apache2.4+php5.6+mysql5.6 安装及踩坑集锦(二) 安装apache web容器 . yum方式安装apache 注意apache在linux ...

  5. linux ubuntu系统下,adb不是内部命令 (如何才能让adb命令可以使用)

    linux ubuntu系统下,adb不是内部命令 原文地址 linux ubuntu系统下,adb不是内部命令 解决方法: 1.sudo gedit ~/.bashrc 2.将下面的两句加到上面打开 ...

  6. Linux(CentOS)系统下安装好apache(httpd)服务后,其他电脑无法访问的原因

    原文:Linux(CentOS)系统下安装好apache(httpd)服务后,其他电脑无法访问的原因 今天试了下在虚拟机上利用CentOS系统的yum命令安装好了httpd(apache2.4.6), ...

  7. Linux centos7环境下安装MySQL的步骤详解

    Linux centos7环境下安装MySQL的步骤详解 安装MySQL mysql 有两个跟windows不同的地方 1).my.ini 保存到/etc/my.ini 2).用户权限,单独用户执行 ...

  8. Linux centos7环境下安装Nginx

    Linux centos7环境下安装Nginx的步骤详解 1.    首先到Nginx官网下载Nginx安装包 http://nginx.org/download/nginx-1.5.9.tar.gz ...

  9. centos7系统下搭建docker本地镜像仓库

    ## 准备工作 用到的工具, Xshell5, Xftp5, docker.io/registry:latest镜像 关于docker的安装和设置加速, 请参考这篇博文centos7系统下 docke ...

随机推荐

  1. 数据仓库专题(21):Kimball总线矩阵说明-官方版

    一.前言 Over the years, I have found that a matrix depiction of the data warehouse plan is a pretty goo ...

  2. 关于Java大数操作(BigInteger、BigDecimal)

    本文目标 可以使用BigInteger操作大整数 可以使用BigDecimal指定小数的保留位数 基础知识 对于二进制来说,最高位代表正负号,-0表示-128,+0表示032位系统int型4个字节:- ...

  3. 使用Selenium模拟浏览器抓取淘宝商品美食信息

    代码: import re from selenium import webdriver from selenium.webdriver.common.by import By from seleni ...

  4. [Easyui - Grid]为easyui的datagrid、treegrid增加表头菜单,用于显示或隐藏列

    为easyui的datagrid.treegrid增加表头菜单,用于显示或隐藏列 /** * @author 孙宇 * * @requires jQuery,EasyUI * * 为datagrid. ...

  5. chrome 抓包的小功能--preserve log (记录页面跳转后,所有的抓包记录)

    1.记录页面跳转后,所有的抓包记录,勾上

  6. Spring @Async使用方法总结

    引言: 在Java应用中,绝大多数情况下都是通过同步的方式来实现交互处理的:但是在处理与第三方系统交互的时候,容易造成响应迟缓的情况,之前大部分都是使用多线程来完成此类任务,其实,在spring 3. ...

  7. IDC:时钟系统

    ylbtech-IDC:时钟系统 主要应用于要求有统一时间进行生产,调度的单位如:电力,机场.轻轨.地铁.体育场馆.酒店.医院.部队.油田.水利工程等领域.大区域时钟系统主要由母钟和多台子钟构成. 1 ...

  8. Hive - ORC 文件存储格式【转】

    一.ORC File文件结构 ORC的全称是(Optimized Row Columnar),ORC文件格式是一种Hadoop生态圈中的列式存储格式,它的产生早在2013年初,最初产生自Apache ...

  9. PostgreSQL手动主从切换

    主从切换操作: 1>主库宕机或者测试主备切换情况下停掉主库:systemctl stop postgres 从库会报日志错误信息:[root@db02 /]# cd /var/postgresq ...

  10. linux的cd、ls、chmod命令

    cd ls ls:查看权限  chmod:修改权限