环境搭建
概述
在您开始PHP开发之前,需要搭建一个开发环境。本章将指导您在不同操作系统上安装PHP和必要的工具。
安装选项
选项一:一体化解决方案(推荐初学者)
XAMPP(跨平台)
XAMPP包含Apache、MySQL、PHP和phpMyAdmin在一个包中。
Windows/macOS/Linux:
- 从https://www.apachefriends.org/下载
- 运行安装程序
- 从控制面板启动Apache和MySQL
- 访问
http://localhost测试
WAMP(Windows)
Windows专用解决方案,包含Apache、MySQL和PHP。
安装:
- 从http://www.wampserver.com/下载
- 安装并启动服务
- 通过系统托盘图标访问
MAMP(macOS)
Mac专用开发环境。
安装:
- 从https://www.mamp.info/下载
- 安装并配置端口
- 从应用程序启动服务器
选项二:单独安装
Windows
使用Chocolatey:
powershell
# 首先安装Chocolatey,然后:
choco install php
choco install composer手动安装:
- 从https://windows.php.net/download/下载PHP
- 解压到
C:\php - 将
C:\php添加到系统环境变量PATH - 将
php.ini-development复制为php.ini
macOS
使用Homebrew:
bash
# 首先安装Homebrew,然后:
brew install php
brew install composer使用MacPorts:
bash
sudo port install php81 +apache2
sudo port install php81-mysqlLinux(Ubuntu/Debian)
bash
# 更新包列表
sudo apt update
# 安装PHP和常用扩展
sudo apt install php php-cli php-mysql php-xml php-mbstring php-curl
# 安装Composer
curl -sS https://getcomposer.org/installer | php
sudo mv composer.phar /usr/local/bin/composerLinux(CentOS/RHEL)
bash
# 安装PHP
sudo yum install php php-cli php-mysql php-xml php-mbstring php-curl
# 或者在较新版本上使用dnf
sudo dnf install php php-cli php-mysql php-xml php-mbstring php-curl验证安装
检查PHP版本
bash
php --version预期输出:
PHP 8.2.0 (cli) (built: Dec 6 2022 15:31:23) (NTS)
Copyright (c) The PHP Group
Zend Engine v4.2.0, Copyright (c) Zend Technologies检查PHP配置
bash
php --ini在浏览器中测试PHP
创建一个名为info.php的文件:
php
<?php
phpinfo();
?>将其放置在Web服务器的文档根目录中,然后访问http://localhost/info.php
基本扩展
核心扩展(通常已包含)
- mysqli/pdo:数据库连接
- curl:HTTP客户端功能
- json:JSON数据处理
- mbstring:多字节字符串处理
- xml:XML处理
安装额外扩展
Ubuntu/Debian:
bash
sudo apt install php-gd php-zip php-intlWindows(使用Composer):
bash
composer require ext-gd ext-zip ext-intl开发工具
代码编辑器和IDE
Visual Studio Code(免费)
推荐扩展:
- PHP Intelephense
- PHP Debug
- Bracket Pair Colorizer
- GitLens
PhpStorm(付费)
专业IDE,具有高级功能:
- 智能代码完成
- 内置调试器
- 数据库工具
- 框架支持
Sublime Text(付费)
轻量级,带有PHP包:
- SublimeLinter-php
- PHPCompanion
- DocBlockr
Composer(依赖管理器)
Composer对于现代PHP开发至关重要。
安装验证:
bash
composer --version基本用法:
bash
# 初始化新项目
composer init
# 安装包
composer require monolog/monolog
# 安装依赖
composer installXdebug(调试器)
安装:
bash
# Ubuntu/Debian
sudo apt install php-xdebug
# macOS使用Homebrew
brew install php-xdebug在php.ini中配置:
ini
zend_extension=xdebug
xdebug.mode=debug
xdebug.start_with_request=yes
xdebug.client_port=9003Web服务器配置
内置开发服务器
PHP包含一个用于开发的内置Web服务器:
bash
# 在localhost:8000上启动服务器
php -S localhost:8000
# 使用指定的文档根目录启动
php -S localhost:8000 -t /path/to/document/root
# 使用路由脚本启动
php -S localhost:8000 router.phpApache配置
启用PHP模块:
apache
LoadModule php_module modules/libphp.so
AddType application/x-httpd-php .php虚拟主机示例:
apache
<VirtualHost *:80>
DocumentRoot "/var/www/myproject"
ServerName myproject.local
<Directory "/var/www/myproject">
AllowOverride All
Require all granted
</Directory>
</VirtualHost>Nginx配置
基本PHP配置:
nginx
server {
listen 80;
server_name myproject.local;
root /var/www/myproject;
index index.php index.html;
location ~ \.php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}数据库设置
MySQL/MariaDB
安装:
bash
# Ubuntu/Debian
sudo apt install mysql-server
# macOS
brew install mysql
# 启动服务
sudo systemctl start mysql基本配置:
bash
sudo mysql_secure_installationPostgreSQL
安装:
bash
# Ubuntu/Debian
sudo apt install postgresql postgresql-contrib
# macOS
brew install postgresql开发工作流设置
项目结构
my-php-project/
├── public/
│ ├── index.php
│ └── .htaccess
├── src/
├── tests/
├── vendor/
├── composer.json
└── .gitignoreComposer配置
json
{
"name": "myname/my-php-project",
"description": "我的PHP项目",
"type": "project",
"require": {
"php": ">=8.0"
},
"autoload": {
"psr-4": {
"App\\": "src/"
}
}
}Git配置
bash
git init
git add .
git commit -m "Initial commit"常见问题排除
权限问题(Linux/macOS)
bash
# 修复Web服务器权限
sudo chown -R www-data:www-data /var/www/html
sudo chmod -R 755 /var/www/htmlPHP扩展无法加载
- 检查
php.ini位置:php --ini - 验证
php.ini中的扩展路径 - 修改后重启动Web服务器
端口冲突
bash
# 检查使用80端口的进程
sudo netstat -tulpn | grep :80
# 使用不同端口
php -S localhost:8080下一步
现在您的环境已经设置完成,让我们在快速上手中创建您的第一个PHP脚本。
验证清单
- [ ] PHP已安装并可从命令行访问
- [ ] Web服务器正在运行(Apache/Nginx或内置服务器)
- [ ] Composer已安装并正常工作
- [ ] 代码编辑器已配置PHP扩展
- [ ] 数据库服务器正在运行(如果需要)
- [ ] 可以在浏览器中访问
phpinfo()页面