php7 fileinfo,PHP7.3开启fileinfo扩展

首先说一下fileinfo扩展是做什么的。

官方的说法:

本模块中的函数通过在文件的给定位置查找特定的 魔术 字节序列 来猜测文件的内容类型以及编码。 虽然不是百分百的精确, 但是通常情况下能够很好的工作。

大概意思就是讲通过这个扩展,php支持了一些函数用来获取文件的类型和编码,就是获取文件mime信息。

先说说安装过程吧,怎么用先不说。

之前编译安装php的时候因为服务器配置比较低,就没开启fileinfo,所以在phpinfo下面看到的就是这样:

我安装的php版本是7.3.2。

1. 查一下对应的安装包下面是否有该扩展包[root@------------ ~]# find / -name fileinfo

/usr/local/src/php-7.3.2/ext/fileinfo #如果有这个包,就直接cd到该目录下,如果没有则自行下载对应版本的包。

2. cd到该安装包的目录cd /usr/local/src/php-7.3.2/ext/fileinfo

ls -l 大概有下面这些文件

0de11428cde53d5fe17112fcb7889abd.png

3. 利用phpize脚本编译[root@-------------- fileinfo]# /usr/local/php/bin/phpize #回车后如果返回下面代码,表示成功执行

Configuring for:

PHP Api Version: 20041225

Zend Module Api No: 20060613

Zend Extension Api No: 220060519

4. 编译、安装

还是在当前路径下面执行下面代码./configure --with-php-config=/usr/local/php/bin/php-config #如果没错的话 就执行 安装 make && make install

make && make install #回车后如果返回下面代码,表示成功

Build complete.

Don't forget to run 'make test'.

Installing shared extensions: /usr/local/php/lib/php/extensions/no-debug-non-zts-20180731/

在编译的时候,我这报了一个错

gcc: internal compiler error: Killed (program cc1plus)

原因是因为内存不足导致的,下面是网上的解决办法sudo mkdir -p /var/cache/swap/

sudo dd if=/dev/zero of=/var/cache/swap/swap0 bs=1M count=512

sudo chmod 0600 /var/cache/swap/swap0

sudo mkswap /var/cache/swap/swap0

sudo swapon /var/cache/swap/swap0

利用./php -m 查看该扩展,如果安装完成后发现还没有fileinfo扩展,可参考一下几点调整:安装完是否重启nginx、php-fpm

php.ini是否被加载(./php --ini 可查看)

是否在php.ini配文件内添加 extension=fileinfo.so

检查安装目录下是否存在fileinfo.so文件(第四步下面返回的路径下查看)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值