PHP是运行在服务器端的脚本语言,用于生成动态网页和处理Web请求,不直接在浏览器执行;它支持表单处理、数据库操作、文件读写、邮件发送、API调用及会话管理,广泛应用于WordPress等主流系统。

PHP 是运行在服务器上的脚本语言,专为生成动态网页和处理 Web 请求而生——它不跑在浏览器里,也不直接给用户看,而是替你把 HTML、JSON、图片甚至 PDF “做出来”,再发给浏览器。
PHP 能干什么?看真实使用场景
它不是万能胶,但覆盖了后端开发最常碰的几类活:
- 接收
$_POST或$_GET表单数据,比如登录、搜索、下单 - 连 MySQL 或 PostgreSQL,执行
INSERT、SELECT,读写用户信息或商品库存 - 用
file_get_contents()读配置,file_put_contents()写日志,scandir()扫上传目录 - 调用
mail()发激活邮件,或通过 cURL 调 PayPal、微信支付接口 - 配合
session_start()和setcookie()记住用户是否已登录
别被“预处理器”这名字骗了——它早就不只是“预处理 HTML”。WordPress、WooCommerce、Drupal 全靠它驱动,不是因为多酷,而是因为它够稳、扩展够快、出错容易定位。
为什么 PHP 代码总在服务器上执行?
因为它的执行模型决定了安全边界和行为逻辑:
立即学习“PHP免费学习笔记(深入)”;
- 浏览器只收到最终输出(比如一段 HTML),看不到
这行代码本身 -
include或require的文件路径是服务器本地路径,不是 URL,写成include 'https://xxx.com/config.php'会报错或触发远程文件包含漏洞 -
$_SERVER['DOCUMENT_ROOT']指向网站根目录,不是你本地电脑的桌面路径;部署时若没配好这个,require 'vendor/autoload.php'就会找不到 - 所有数据库密码、API 密钥都该放在 Web 根目录之外,否则可能被误配成可公开访问的静态文件
新手最容易栽在哪几个地方?
不是语法难,而是环境和预期错位:
- 本地用 VS Code 写完
index.php,双击打开——浏览器显示源码,不是页面。原因:没走 PHP 解析器,得用php -S localhost:8000启服务,或配 Apache/Nginx -
echo $_POST['email']直接输出用户输入,没过滤也没验证,XSS 或 SQL 注入就埋下了 - 用
mysql_connect()——这个函数在 PHP 7.0 就被删了,现在必须用mysqli或PDO,否则报Fatal error: Uncaught Error: Call to undefined function mysql_connect() - 上传文件后只检查
$_FILES['avatar']['type'],但这个字段由浏览器提交,完全可伪造;真正要验的是finfo_file()识别的 MIME 类型或文件头字节
PHP 的“简单”是假象,真正的门槛不在写 echo "Hello",而在理解请求生命周期、知道哪段代码该在什么时候跑、以及哪些变量根本不能信。越早看清这点,越少半夜改 .htaccess 或重装 XAMPP。











