PHP 入门教程
PHP 开发环境配置
本教程共 65 篇 · 第 59 篇 · 更新于 2026-07-24 · 约 8 分钟阅读
PHPPHP8开发环境DockerXAMPPLNMP部署
59. PHP 开发环境配置
本节目标:了解常见的 PHP 开发环境方案,能够独立搭建本地开发环境。
工欲善其事,必先利其器。选择合适的开发环境,能让学习和开发事半功倍。
1. 集成环境:XAMPP / WAMP
适合初学者快速上手,一键安装 Apache + MySQL + PHP。
XAMPP(跨平台)
- 下载地址:https://www.apachefriends.org
- 安装后启动 Apache 和 MySQL
- 将项目文件放入
htdocs目录 - 浏览器访问
http://localhost
WAMP(Windows 专用)
- 下载地址:https://www.wampserver.com
- 安装后托盘图标变绿即表示启动成功
- 项目文件放入
www目录
Note集成环境适合学习和快速验证。生产环境不建议直接使用,因为默认配置偏宽松。
2. Docker 环境(推荐)
Docker 能构建与生产环境一致的开发环境,且不影响本机系统。
简单示例
创建 docker-compose.yml:
version: '3.8'
services:
php:
image: php:8.5-apache
ports:
- "8080:80"
volumes:
- ./src:/var/www/html
mysql:
image: mysql:8.4
environment:
MYSQL_ROOT_PASSWORD: 123456
MYSQL_DATABASE: my_app
ports:
- "3306:3306"
volumes:
- mysql_data:/var/lib/mysql
redis:
image: redis:7-alpine
ports:
- "6379:6379"
volumes:
mysql_data:
启动命令:
docker-compose up -d
访问 http://localhost:8080 即可。
TipDocker 的优势是环境可复现。团队成员只需一份
docker-compose.yml,就能拥有完全一致的开发环境。
3. LNMP / LAMP 手动搭建
Linux 服务器上常见的生产环境架构:
| 缩写 | 组成 | 说明 |
|---|---|---|
| LAMP | Linux + Apache + MySQL + PHP | 经典方案,Apache 配置灵活 |
| LNMP | Linux + Nginx + MySQL + PHP | 性能更优,Nginx 并发能力强 |
Ubuntu 安装 LNMP 示例
# 1. 安装 Nginx
sudo apt update
sudo apt install nginx
# 2. 安装 PHP 及常用扩展
sudo apt install php-fpm php-mysql php-redis php-mbstring php-xml
# 3. 安装 MySQL
sudo apt install mysql-server
# 4. 配置 Nginx 指向 PHP
sudo nano /etc/nginx/sites-available/default
Nginx 配置片段:
server {
listen 80;
root /var/www/html;
index index.php;
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php8.5-fpm.sock;
}
}
4. PHP 内置服务器
PHP 自带了一个轻量级 Web 服务器,适合快速测试,无需安装 Apache/Nginx。
# 进入项目目录
cd /path/to/project
# 启动服务器(默认 8000 端口)
php -S localhost:8000
# 指定根目录
php -S localhost:8000 -t public/
Note内置服务器仅用于开发测试,绝对不能用于生产环境。它不支持并发请求和 .htaccess。
5. 开发环境检查清单
搭建完成后,确认以下配置:
<?php
phpinfo(); // 查看 PHP 配置和已加载的扩展
| 检查项 | 建议 |
|---|---|
| PHP 版本 | 8.1 或更高 |
| 数据库扩展 | mysqli 和 pdo_mysql 已启用 |
| 字符集 | php.ini 中 default_charset = "UTF-8" |
| 错误显示 | 开发环境 display_errors = On,生产环境 Off |
| 时区 | date.timezone = Asia/Shanghai |
小结
初学者可从 XAMPP 起步,进阶后转向 Docker。理解环境搭建的原理,有助于排查线上问题。
来源:参考了 php-the-right-way「Servers and Deployment」「Docker」、PHP 官方文档,改写后所得。