PHP 编程语言介绍
文档分类:后端开发 | 适用人群:开发、运维、新手上手参考
1. 什么是 PHP
PHP 全称 PHP: Hypertext Preprocessor(超文本预处理器),是开源、跨平台的服务器端脚本语言,主打 Web 开发,代码可以直接嵌入 HTML 中执行PHP。
- 开源免费,许可证:PHP License
- 运行模式:CLI 命令行模式、Web 模块模式(FPM / CGI / Apache 模块)
- 典型用途:网站、后台管理系统、API 接口、小程序后端、脚本自动化、定时任务
- 主流框架:Laravel、Symfony、ThinkPHP、FastAdmin、Yii
简单示例:
<!DOCTYPE html>
<html>
<body>
<?php
echo "Hello PHP";
?>
</body>
</html>
2. PHP 官方站点(重要链接)
- 主站:https://www.php.net/PHP
- 官方下载页:https://www.php.net/downloads.phpPHP
- 中文手册:https://www.php.net/manual/zh/PHP
- PECL 扩展仓库:https://pecl.php.net/
- Git 源码仓库:https://github.com/php/php-src
- 国内镜像站(中文):https://php.ac.cn/
提示:所有官方安装说明、版本变更日志、安全公告都以 php.net 为准。
3. 版本说明
PHP 采用语义化版本,目前主推 8.x 系列(8.2/8.3/8.4),7.x 大部分已经停止维护,生产环境尽量选择受支持的稳定版,避免 EOL(生命周期结束)版本。
- GA:正式稳定版,生产推荐
- RC / Beta:测试预览版,仅用于功能验证,禁止上生产
- 旧归档版本:https://museum.php.net/(仅存档,无安全更新)
4. 下载方式
说明:PHP 官方只提供 Windows 预编译二进制包;Linux /macOS 官方不提供预编译包,由发行方仓库或自行编译源码安装PHP
4.1 Windows 平台(二进制包,推荐)
下载地址:https://www.php.net/downloads.php?os=windows 下载包分为两类:
- TS(Thread Safe,线程安全):搭配 Apache 模块方式使用
- NTS(Non Thread Safe,非线程安全):搭配 IIS + FastCGI、Nginx + FPM,生产环境最常用PHP
- 架构:优先选择 x64
- 依赖:需要安装对应版本的 Microsoft Visual C++ Redistributable
- 包类型:ZIP 压缩包(绿色免安装,直接解压配置),没有 MSI 安装包
4.2 源码包(全平台通用)
源码包在 downloads 页面下载 tar.gz 压缩包,适合 Linux、自定义编译参数、定制扩展的场景。
编译流程简要:
./configure
make
make install
也可以直接从 Git 获取开发版源码:
git clone https://github.com/php/php-src.git
4.3 Linux 发行版包管理器安装(线上常用)
注意:仓库版本不一定是最新版,适合快速部署
# Debian / Ubuntu
apt install php php-fpm
# Rocky / Alma / CentOS(dnf)
dnf install php php-fpm
# Alpine
apk add php83 php83-fpm
4.4 macOS
- Homebrew:
brew install php - MacPorts:
port install php
5. 运行方式
- CLI 模式:命令行执行脚本,适合定时脚本、数据处理
php test.php php -v # 查看版本 - FPM 模式:Nginx / Apache 通过 FastCGI 调用,网站生产主流方案
- Apache 模块:php_module(TS 包)
- 内置开发服务器(仅本地开发,严禁生产)
php -S 127.0.0.1:8000
6. 基础配置文件
解压 / 安装后核心文件:
php.ini:主配置文件(时区、上传大小、内存限制、扩展开关)php-fpm.conf、www.conf:FPM 进程池配置(进程数、监听地址、权限)
7. 生态与扩展
PHP 拥有丰富扩展,用于连接数据库、缓存、加密等:
- 数据库:pdo_mysql、mysqli、pgsql
- 缓存:redis、apcu
- 加解密:openssl
- 图片:gd、imagick 扩展来源:内置扩展、PECL 扩展、第三方编译包
8. 安全与最佳实践
- 始终使用官方渠道下载,校验文件签名
- 及时升级版本,关注官方安全公告
- 生产关闭
display_errors,日志单独输出 - 不使用 root 运行 php-fpm,做好文件权限隔离
- 输入校验、防 SQL 注入、XSS,优先使用 PDO 预处理
9. 常见配套组合
- LNMP:Linux + Nginx + MySQL + PHP-FPM(国内最主流)
- LAMP:Linux + Apache + MySQL + PHP
- Windows:IIS + NTS PHP + FastCGI