如何在M1/M2芯片的Mac上安装和使用Composer?(ARM64架构)

发布时间 - 2025-12-21 00:00:00    点击率:
在M1/M2 Mac上应通过Homebrew安装ARM64原生PHP和Composer,确保openssl与fileinfo扩展启用;再配置阿里云镜像源加速,并按标准流程使用composer install、require等命令。

在M1/M2芯片的Mac上安装和使用Composer,关键在于确保PHP与Composer都运行在原生ARM64架构下,避免依赖Rosetta转译。Homebrew是目前最可靠、最省心的方式——它会自动拉取适配Apple Silicon的PHP(如8.3.x)和Composer,并统一管理路径与依赖。

用Homebrew安装PHP(ARM64原生)

Composer必须依赖PHP运行,且需要openssl和fileinfo两个扩展。Homebrew安装的PHP默认启用这些扩展,并适配arm64:

  • 先确认Homebrew已就位:brew --version;未安装则执行官方一键脚本
  • 安装PHP:brew install php(自动选arm64版本)
  • 验证环境:php -v 应输出类似 PHP 8.3.12;再运行 php -m | grep -E "openssl|fileinfo",两行都应有输出

用Homebrew安装Composer(自动关联PHP)

不推荐手动下载.phar文件或用curl管道安装——容易漏掉PATH配置、权限问题或PHP路径错位。Homebrew版Composer会自动绑定当前brew PHP,并放入/opt/homebrew/bin

  • 执行:brew install composer
  • 验证:composer --version,成功时显示版本号(如Composer version 2.7.7
  • 若提示command not found,说明PATH未生效,需检查~/.zshrc是否含export PATH="/opt/homebrew/bin:$PATH",然后运行source ~/.zshrc

配置国内镜像源(加速依赖下载)

默认Packagist源在国外,首次composer install可能超时或失败。设阿里云镜像只需一条命令,全局生效:

  • composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/
  • 之后所有项目都会走国内CDN,vendor目录下载速度提升3–5倍
  • 可随时恢复默认:composer config -g --unset repo.packagist

在项目中正常使用Composer

完成上述配置后,Composer行为与Intel Mac完全一致:

  • 进入已有PHP项目(含composer.json),直接运行composer install,自动生成vendor/目录
  • 初始化新项目:composer init,按提示生成基础composer.json
  • 添加依赖:composer require monolog/monolog,自动写入并安装
  • 更新依赖:composer update(注意:建议配合composer.lock使用以保证一致性)


# php  # js  # json  # composer  # app  # ssl  # mac  # curl  # 阿里云  # apple  # cdn  # 镜像源  # 架构  # require 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: 大连企业网站制作公司,大连2025企业社保缴费网上缴费流程?  Windows11怎样设置电源计划_Windows11电源计划调整攻略【指南】  怎样使用JSON进行数据交换_它有什么限制  Android使用GridView实现日历的简单功能  Laravel如何实现图片防盗链功能_Laravel中间件验证Referer来源请求【方案】  如何用AI一键生成爆款短视频文案?小红书AI文案写作指令【教程】  如何快速完成中国万网建站详细流程?  公司网站制作需要多少钱,找人做公司网站需要多少钱?  Laravel Eloquent模型如何创建_Laravel ORM基础之Model创建与使用教程  Laravel如何处理和验证JSON类型的数据库字段  如何在 Pandas 中基于一列条件计算另一列的分组均值  如何批量查询域名的建站时间记录?  打开php文件提示内存不足_怎么调整php内存限制【解决方案】  Laravel怎么进行数据库回滚_Laravel Migration数据库版本控制与回滚操作  Laravel如何获取当前用户信息_Laravel Auth门面获取用户ID  如何用y主机助手快速搭建网站?  Win11怎样安装网易有道词典_Win11安装词典教程【步骤】  车管所网站制作流程,交警当场开简易程序处罚决定书,在交警网站查询不到怎么办?  黑客如何通过漏洞一步步攻陷网站服务器?  html5的keygen标签为什么废弃_替代方案说明【解答】  大连网站制作公司哪家好一点,大连买房网站哪个好?  实现点击下箭头变上箭头来回切换的两种方法【推荐】  个人摄影网站制作流程,摄影爱好者都去什么网站?  如何在IIS7上新建站点并设置安全权限?  头像制作网站在线观看,除了站酷,还有哪些比较好的设计网站?  Laravel如何生成和使用数据填充?(Seeder和Factory示例)  网站建设要注意的标准 促进网站用户好感度!  Laravel怎么解决跨域问题_Laravel配置CORS跨域访问  Laravel如何使用Eloquent进行子查询  Laravel如何使用Facades(门面)及其工作原理_Laravel门面模式与底层机制  Laravel怎么生成二维码图片_Laravel集成Simple-QrCode扩展包与参数设置【实战】  文字头像制作网站推荐软件,醒图能自动配文字吗?  如何用免费手机建站系统零基础打造专业网站?  黑客如何利用漏洞与弱口令入侵网站服务器?  Laravel的契約(Contracts)是什么_深入理解Laravel Contracts与依赖倒置  Laravel Blade组件怎么用_Laravel可复用视图组件的创建与使用  高防服务器租用首荐平台,企业级优惠套餐快速部署  rsync同步时出现rsync: failed to set times on “xxxx”: Operation not permitted  敲碗10年!Mac系列传将迎来「触控与联网」双革新  图册素材网站设计制作软件,图册的导出方式有几种?  如何快速搭建虚拟主机网站?新手必看指南  Python企业级消息系统教程_KafkaRabbitMQ高并发应用  想要更高端的建设网站,这些原则一定要坚持!  🚀拖拽式CMS建站能否实现高效与个性化并存?  Laravel如何使用Telescope进行调试?(安装和使用教程)  如何在阿里云部署织梦网站?  如何快速打造个性化非模板自助建站?  Laravel如何使用Collections进行数据处理?(实用方法示例)  Laravel如何实现密码重置功能_Laravel密码找回与重置流程  Laravel队列任务超时怎么办_Laravel Queue Timeout设置详解