IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> PHP知识库 -> MaOS10.14使用PECL安装和编译安装PHP扩展mongodb.os -> 正文阅读

[PHP知识库]MaOS10.14使用PECL安装和编译安装PHP扩展mongodb.os

环境:

MacOS Mojave 版本 10.14.4 (18E2035)

$ php -v
PHP 7.1.23

方式一:编译安装扩展

下载mongodb扩展

https://pecl.php.net/package/mongodb

# 截止2021-08-26最新
$ wget https://pecl.php.net/get/mongodb-1.10.0.tgz

# 解压
$ tar -zxvf mongodb-1.10.0.tgz

# 进入目录
$ cd mongodb-1.10.0

# 生成configure文件
$ phpize

# 编译安装,如果只有一个php版本可省略参数 --with-php-config
$ ./configure --with-php-config=php-config
$ make && make install

# 查看扩展目录
$ php -i | grep extension_dir

# 查看生成的.so扩展文件
$ ls /usr/lib/php/extensions/no-debug-non-zts-20160303
mongodb.so  opcache.a   opcache.so  xdebug.so

# 查看ini文件路径
$ php --ini

在配置文件 php.ini 中加入一行配置:

extension=mongodb.so

检查

# 查看PHP的mongodb扩展模块
$ php -m | grep mongodb

也可以用phpinfo(); 查看扩展安装信息

参考
macOs-sdk headers for macos 10.14 该软件包与mac os 不兼容
mac下PHP安装mongodb的扩展
php7.2 安装mongodb扩展 生成mongodb.so文件
Operation Not Permitted 错误问题
MongoDB PHP 扩展

遇到的问题及解决

1、执行 phpize 显示目录不存在

$ phpize
grep: /usr/include/php/main/php.h: No such file or directory
grep: /usr/include/php/Zend/zend_modules.h: No such file or directory
grep: /usr/include/php/Zend/zend_extensions.h: No such file or directory
Configuring for:
PHP Api Version:        
Zend Module Api No:     
Zend Extension Api No:

原因是 /usr/include 文件夹不存在

处理方式:

$ open /Library/Developer/CommandLineTools/Packages/macOS_SDK_headers_for_macOS_10.14.pkg

如果提示不兼容,则需要重装一下

$ sudo rm -rf /Library/Developer/CommandLineTools
$ xcode-select --install
$ open /Library/Developer/CommandLineTools/Packages/macOS_SDK_headers_for_macOS_10.14.pkg

2、编译安装时提示没有权限

一种说法是修改MacOS的文件权限,我试了之后不好使

我的处理方式是,将编译生成的文件 modules/mongodb.so 拷贝到目标扩展文件夹

cp ./modules/mongodb.so /usr/lib/php/extensions/no-debug-non-zts-20160303

方式二:PECL安装扩展

1、先安装PECL/PEAR

官方文档:https://pear.php.net/manual/en/installation.getting.php

$ curl -O https://pear.php.net/go-pear.phar

$ sudo php -d detect_unicode=0 go-pear.phar

选择1,改为: /usr/local/pear
选择4,改为: /usr/local/bin

2、检查

$ pear version

3、安装mongodb扩展

$ sudo pecl install mongodb

4、配置php.ini 文件,添加 配置

extension=mongodb.so

参考
macOS 上安装 PECL
PHP7 MongDB 安装与使用

  PHP知识库 最新文章
Laravel 下实现 Google 2fa 验证
UUCTF WP
DASCTF10月 web
XAMPP任意命令执行提升权限漏洞(CVE-2020-
[GYCTF2020]Easyphp
iwebsec靶场 代码执行关卡通关笔记
多个线程同步执行,多个线程依次执行,多个
php 没事记录下常用方法 (TP5.1)
php之jwt
2021-09-18
上一篇文章      下一篇文章      查看所有文章
加:2021-08-27 11:38:35  更:2021-08-27 11:39:36 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/15 9:26:34-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码