mac本地php环境如何安装memcached_memcached扩展安装与配置详解【汇总】

Mac本地PHP启用memcached需先确认PHP环境,再安装libmemcached依赖,接着通过pecl或Homebrew安装扩展并配置php.ini,最后启动memcached服务并验证连通性。

如果您在Mac本地PHP环境中需要使用Memcached缓存功能,但PHP无法识别memcached扩展,则可能是由于扩展未安装、未启用或依赖组件缺失。以下是完成memcached扩展安装与配置的完整操作流程:

一、确认PHP版本与安装方式

Mac系统中PHP可能来自系统自带、Homebrew、XAMPP、MAMP或phpbrew等不同来源,扩展安装路径和启用方式存在差异。需先明确当前PHP实际路径及编译方式,避免后续配置失效。

1、打开终端,执行 php -v 查看PHP版本信息。

2、执行 which php 获取PHP可执行文件路径。

3、执行 php --ini 查看php.ini加载位置及扫描目录。

4、执行 php -m | grep memcached 检查当前是否已加载memcached扩展。

二、安装libmemcached依赖库

memcached PHP扩展依赖于C语言客户端库libmemcached,必须先安装该底层库,否则扩展编译将失败。

1、若已安装Homebrew,执行 brew install libmemcached 安装最新稳定版。

2、如遇编译错误提示“sasl.h not found”,追加参数重装:brew install libmemcached --without-sasl

3、安装完成后,执行 brew info libmemcached 确认安装路径(通常为 /opt/homebrew/ 或 /usr/local/)。

三、通过pecl安装memcached扩展

PECL是PHP官方扩展仓库,适用于大多数Homebrew或源码编译安装的PHP环境,支持自动下载、编译与安装。

1、执行 pecl install memcached 启动交互式安装流程。

2、当提示 libmemcached directory [no] : 时,输入libmemcached安装路径中的include目录,例如:/opt/homebrew/opt/libmemcached/include(Apple Silicon)或 /usr/local/opt/libmemcached/include(Intel)。

3、安装成功后,终端将输出类似 extension=memcached.so 的启用提示行。

4、将该行添加到php.ini主配置文件中:使用 echo "extension=memcached.so" >> $(php --ini | grep "Loaded Configuration File" | cut -d":" -f2 | tr -d " ") 自动追加。

四、通过Homebrew安装php-memcached(替代方案)

部分Homebrew PHP版本(如php@8.1、php@8.2)提供预编译的memcached扩展包,无需手动编译,适合快速启用。

1、执行 brew search memcached 查看可用扩展包,如 php@8.2-memcached

2、安装对应PHP版本的扩展:brew install php@8.2-memcached(请将8.2替换为当前PHP主版本号)。

3、安装后,扩展so文件通常位于 /opt/homebrew/lib/php/pecl/20250829/memcached.so(路径含PHP ABI编号)。

4、编辑php.ini,在末尾添加:extension="/opt/homebrew/lib/php/pecl/20250829/memcached.so"(路径需与实际一致)。

五、验证memcached服务与扩展协同运行

仅安装PHP扩展不足以启用缓存功能,还需确保memcached守护进程正在运行,并能被PHP客户端连接。

1、执行 brew services start memcached 启动memcached服务(如未安装,先运行 brew install memcached)。

2、执行 ps aux | grep memcached 确认进程存在,端口默认为11211。

3、创建测试文件test_memcached.php,内容为:addServer('127.0.0.1', 11211); var_dump($m->getVersion()); ?>

4、在终端执行 php test_memcached.php,若输出包含版本数组则表示扩展与服务通信正常。