MacOS上搭建PHP开发环境
记录 MacOS 上 PHP 开发环境的搭建,包括 Composer、ThinkPHP、MySQL 和 Docker。
# PHP
MacOS 自带了 PHP,无需安装。
$ php -v
PHP 7.3.11 (cli) (built: Dec 13 2019 19:21:21) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.3.11, Copyright (c) 1998-2018 Zend Technologies
2
3
4
# Composer
Composer 是 PHP 用来管理依赖(dependency)关系的工具。 你可以在自己的项目中声明所依赖的外部工具库(libraries),Composer 会帮你安装这些依赖的库文件。 Composer也可以管理项目。
总的来说,Composer是一个基于PHP的版本控制、项目管理的工具。
- 英文官网:https://getcomposer.org/
- 英文镜像:https://packagist.org
- 中文官网:https://www.phpcomposer.com/
- 中文镜像:https://pkg.phpcomposer.com/
# 安装
# 下载安装脚本
php -r "copy('https://install.phpcomposer.com/installer', 'composer-setup.php');"
# 执行安装过程
php composer-setup.php
# 删除安装脚本
php -r "unlink('composer-setup.php');"
# 全局安装
sudo mv composer.phar /usr/local/bin/composer
# 切换镜像
composer config -g repo.packagist composer https://packagist.phpcomposer.com
# PhpStorm
编辑器首选PhpStorm,当然它是收费的,你可以选择付费购买、或者网上探索民间高手的破解大法。
我个人采用的是民间的方法,访问 http://idea.medeming.com/jets,点击下载激活码,就可以激活了。 虽然显示激活码还有一个月就到期了,但网站上作者表示会一直更新下去,那就拭目以待吧。
# ThinkPHP
使用 Composer 安装 ThinkPHP 5。
composer create-project topthink/think tp5 5.1.39
# 启动 web 服务
$ cd tp5
$ php think run
ThinkPHP Development server is started On <http://127.0.0.1:8000/>
You can exit with `CTRL-C`
Document root is: /Users/bingo/Desktop/php/tp/public
2
3
4
5
访问 http://localhost:8000/ 即可看到 TP 首页。
至此,已经完成 PHP 项目和 ThinkPHP 5.1 框架的安装,以及项目的运行调试。
接下来还需要在本地搭建数据库服务。
# MySQL
下载安装 MySQL 的方法有很多,可以直接到官网 MySQL Community Downloads,下载 macOS 的 DMG 版本,下载完成后,双击下载的安装包进行安装,一路点 next 即可完成安装,比较傻瓜式。
也可以采用 Docker 的方式运行一个 MySQL 容器,这需要有一些 Docker 基础。
我个人采用 Docker 的方式运行 MySQL,因为服务器上的数据库也是用 Docker 运行的,这可以保证运行环境的一致性,避免后期在正式环境上运行出现一些无法预知的 BUG;而且 Docker 也很方便,几行命令就可以实现 MySQL 的启动、关闭、重启,甚至是删除以及重新创建。
# Docker 安装
首先前往 Docker 官网下载页面 Docker Desktop,点击 Get Docker 按钮,即可自动下载 Docker 安装包;下载完成后,同样双击 Docker.dmg 即可进行安装。
# 拉取 MySQL 镜像
前往 https://hub.docker.com/_/mysql,可以看到 mysql 官方的 docker 镜像,也可以看到明显的命令行提示,只需要执行如下命令,即可拉取 mysql 镜像,这里我们使用 5.7
的版本。
docker pull mysql:5.7
# 运行 MySQL 容器
在上面打开的页面下方,有 MySQL 官方对该镜像很详细的用法介绍,简单地说,运行 MySQL 容器只需要一行 docker run
命令。
docker run -d --name mysql -e MYSQL_ROOT_PASSWORD=123456 -p 3306:3306 mysql:5.7
参数说明:
-d
:设置容器在后台运行--name mysql
:设置容器名称为mysql
MYSQL_ROOT_PASSWORD
是一个环境变量,设置 root 账户的密码,这里设置为123456
。-p 3306:3306
把容器内部的3306
端口映射到了宿主机的3306
端口上,这样就可以通过本机的3306
端口访问到容器内的 MySQL 服务。mysql:5.7
:指定运行容器的镜像名称和版本号(Tag)
# 连接 MySQL 服务
上面 docker run 的命令执行后,数据库服务就已经运行完成了,使用 docker ps
命令即可看到正在运行的 mysql 容器。
$ docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
f21e415d8deb mysql:5.7 "docker-entrypoint.s…" 3 seconds ago Up 2 seconds 0.0.0.0:3306->3306/tcp, 33060/tcp mysql
2
3
接下来就可以在 mac 上使用 MySQL 的客户端,例如 Navicat 进行连接。
- Host: localhost
- Port: 3306
- User Name: root
- Password: 123456
至此,PHP 相关的开发环境已经全部搭建完毕,接下来可以开始进行项目的编码开发工作。