当前位置: 首页 > news >正文

【小海实习日记】PHP安装

## PHP环境搭建(Mac)

### php安装

使用brew需要安装homebrew

>brew tap shivammathur/php
>brew install shivammathur/php/php@7.3
>brew link php@7.3

这里可以需要homebrew使用代理进行下载,如果代理下载速度还是太慢,建议直接更该国内镜像源,以下提供两种方法。

#### 方法一

##### 替换镜像源

```bash
# 查看当前镜像源
$ cd "$(brew --repo)" && git remote -v
origin    https://github.com/Homebrew/brew.git (fetch)
origin    https://github.com/Homebrew/brew.git (push)

# 查看 homebrew-core.git 当前源
$ cd "$(brew --repo homebrew/core)" && git remote -v
origin    https://github.com/Homebrew/homebrew-core.git (fetch)
origin    https://github.com/Homebrew/homebrew-core.git (push)

# 修改 brew.git 为阿里源
$ git -C "$(brew --repo)" remote set-url origin https://mirrors.aliyun.com/homebrew/brew.git

# 修改 homebrew-core.git 为阿里源
$ git -C "$(brew --repo homebrew/core)" remote set-url origin https://mirrors.aliyun.com/homebrew/homebrew-core.git

# zsh 替换 brew bintray 镜像
$ echo 'export HOMEBREW_BOTTLE_DOMAIN=https://mirrors.aliyun.com/homebrew/homebrew-bottles' >> ~/.zshrc
$ source ~/.zshrc

# bash 替换 brew bintray 镜像
$ echo 'export HOMEBREW_BOTTLE_DOMAIN=https://mirrors.aliyun.com/homebrew/homebrew-bottles' >> ~/.bash_profile
$ source ~/.bash_profile

# 刷新源
$ brew update
```

brew tap shivammathur/php 命令是用来向 Homebrew 添加一个新的 tap(软件源)的命令。具体解释如下:

什么是 Tap?

在 Homebrew 中,tap 是一个包含软件包公式(formulae)的 git 仓库。公式是 Homebrew 用来描述如何安装软件包的 Ruby 脚本。Homebrew 的默认 tap 包含了许多常见的软件包,但有时候你可能需要安装一些默认 tap 中没有的软件包。这时候,你可以通过添加其他 tap 来获取这些软件包。

shivammathur/php Tap

shivammathur/php 是一个包含不同 PHP 版本公式的 Homebrew tap。它提供了各个 PHP 版本的安装方法,包括 7.1 到 8.1 之间的多个 PHP 版本。由于 Homebrew 默认仓库目前可能没有提供特定版本的 PHP,尤其是较老的版本,例如 PHP 7.3,因此这个 tap 就非常有用。

brew tap shivammathur/php 命令具体功能

当你运行 brew tap shivammathur/php 时,它会做以下工作:

  1. 添加 Tap 瓶子源:将 shivammathur/php 仓库添加到 Homebrew 中。这使得 Homebrew 知道从哪里获取新 PHP 版本的安装公式。

  2. 同步公式:下载并同步 shivammathur/php 仓库中的所有公式,使得它们准备好安装。

添加 tap 后,你就可以使用 Homebrew 安装该 tap 中的软件包,例如各种 PHP 版本。

具体操作步骤

  1. 添加 PHP Tap

    brew tap shivammathur/php
    
  2. 安装特定版本的 PHP(例如 PHP 7.3)

    brew install shivammathur/php/php@7.3
    
  3. 链接 PHP 版本

    brew link --force --overwrite php@7.3
    

检查已添加的 Tap

你可以使用 brew tap 命令来查看当前 Homebrew 已添加的 tap:

brew tap

总结

brew tap shivammathur/php 命令向 Homebrew 添加了一个新的 tap,这个 tap 包含了多个不同版本的 PHP 的安装配方。通过这种方式,你可以很方便地安装和管理不同版本的 PHP。

希望这些信息能帮你更好地理解 brew tap shivammathur/php 命令的功能。如果你有更多问题或需要进一步的帮助,请告诉我。

推荐一个大佬写的安装homebrew的脚本:https://zhuanlan.zhihu.com/p/111014448,非常好用

相关文章:

  • 如何通过HarmonyOS开发下肢康复外骨骼系统
  • 如何用AI大模型打造个性化内容页面展示,提升用户阅读体验和内容传播效果
  • ThinkBook 16 2024 Ubuntu 触控板问题解决
  • 【紧急警示】Locked勒索病毒利用最新PHP远程代码执行漏洞大规模批量勒索!文末附详细加固方案
  • C语言结构体和共用体
  • 虚拟化 之四 详解 jailhouse 使能和创建 Cell 的工作流程
  • vue面试题八
  • 事务中存在多线程,怎么处理?
  • 实现开源可商用的 ChatPDF RAG:密集向量检索(R)+上下文学习(AG)
  • 20240612每日前端---------transform实现水平垂直居中
  • 单北斗定位手持终端的优势
  • 计算机体系结构学习(一)
  • 随笔——预处理详解
  • 在矩池云使用GLM-4的详细指南(无感连GitHubHuggingFace)
  • 01背包问题(模板)
  • [译] 理解数组在 PHP 内部的实现(给PHP开发者的PHP源码-第四部分)
  • Angular2开发踩坑系列-生产环境编译
  • Angular4 模板式表单用法以及验证
  • gulp 教程
  • js中forEach回调同异步问题
  • SegmentFault 社区上线小程序开发频道,助力小程序开发者生态
  • SpingCloudBus整合RabbitMQ
  • uni-app项目数字滚动
  • 说说动画卡顿的解决方案
  • ​LeetCode解法汇总1276. 不浪费原料的汉堡制作方案
  • ‌[AI问答] Auto-sklearn‌ 与 scikit-learn 区别
  • # 执行时间 统计mysql_一文说尽 MySQL 优化原理
  • #HarmonyOS:软件安装window和mac预览Hello World
  • #QT(TCP网络编程-服务端)
  • #WEB前端(HTML属性)
  • #我与Java虚拟机的故事#连载04:一本让自己没面子的书
  • (android 地图实战开发)3 在地图上显示当前位置和自定义银行位置
  • (保姆级教程)Mysql中索引、触发器、存储过程、存储函数的概念、作用,以及如何使用索引、存储过程,代码操作演示
  • (带教程)商业版SEO关键词按天计费系统:关键词排名优化、代理服务、手机自适应及搭建教程
  • (附源码)springboot车辆管理系统 毕业设计 031034
  • (力扣记录)1448. 统计二叉树中好节点的数目
  • (十一)JAVA springboot ssm b2b2c多用户商城系统源码:服务网关Zuul高级篇
  • (一)项目实践-利用Appdesigner制作目标跟踪仿真软件
  • (已更新)关于Visual Studio 2019安装时VS installer无法下载文件,进度条为0,显示网络有问题的解决办法
  • (转)chrome浏览器收藏夹(书签)的导出与导入
  • (转)使用VMware vSphere标准交换机设置网络连接
  • (转)自己动手搭建Nginx+memcache+xdebug+php运行环境绿色版 For windows版
  • ./configure、make、make install 命令
  • ./和../以及/和~之间的区别
  • .NET CF命令行调试器MDbg入门(一)
  • .NET Framework 和 .NET Core 在默认情况下垃圾回收(GC)机制的不同(局部变量部分)
  • .net SqlSugarHelper
  • .Net Web窗口页属性
  • .NET/C# 检测电脑上安装的 .NET Framework 的版本
  • .net利用SQLBulkCopy进行数据库之间的大批量数据传递
  • .NET企业级应用架构设计系列之技术选型
  • @RequestMapping 和 @GetMapping等子注解的区别及其用法
  • @value 静态变量_Python彻底搞懂:变量、对象、赋值、引用、拷贝
  • @开发者,一文搞懂什么是 C# 计时器!
  • [ CTF ]【天格】战队WriteUp- 2022年第三届“网鼎杯”网络安全大赛(青龙组)