dreamweaver不执行php,仅作编辑器;php调试必须在xampp/mamp等真实服务器环境中运行,通过浏览器或日志查看输出;推荐用var_dump($var)配合标签,或print_r($var, true)结合error_log写入debug.log;需正确配置dw站点url为http://localhost/项目名,并确保apache已启用php模块。

Dreamweaver(DW)本身不执行 PHP,它只是代码编辑器,所有 PHP 调试信息必须在真实 Web 服务器环境(如本地 XAMPP、MAMP 或远程环境)中运行后,通过浏览器或服务器日志查看。直接在 DW 界面点“实时视图”或“在浏览器中预览”时,若没配好本地服务器,echo、var_dump 都不会显示——这是最常被误以为“DW 不支持 PHP 调试”的根源。
PHP 输出调试信息的常用函数怎么选
别只用 echo 打印简单字符串,它对数组、对象无效;也别一上来就用 print_r 而不加格式化,容易让页面错乱或信息被浏览器忽略。
-
var_dump($var):最推荐初学者用,显示类型、长度、值,但输出无 HTML 换行,建议包在<pre class="brush:php;toolbar:false;"></pre>里 -
print_r($var, true):第二个参数设为true可返回字符串而非直接输出,方便配合error_log()写入日志 -
error_log(print_r($var, true), 3, 'debug.log'):把调试内容写进项目根目录的debug.log,不污染页面,适合 AJAX 场景 - 避免在循环里频繁调用
var_dump,可能拖慢响应甚至触发内存溢出
DW 中配置本地测试服务器让调试生效
DW 的“在浏览器中预览”默认调用系统默认浏览器打开本地文件(file:// 协议),而 PHP 文件必须经由 http:// 协议由 Apache/Nginx 解析才能执行。所以关键不是 DW 设置,而是确保:
- XAMPP/MAMP 已启动,
http://localhost/能访问到首页 - DW 站点定义中,“服务器技术”选 PHP,“连接方法”选“本地/网络”,“Web URL”填
http://localhost/your-project/ - 保存文件后,用 DW 菜单“文件 → 在浏览器中预览 → Chrome”(或其他已配置的浏览器),实际访问的是
http://localhost/...地址 - 如果仍看到源码或下载提示,说明 Web 服务器没识别 .php 后缀——检查 Apache 的
LoadModule php_module和AddHandler配置
Chrome 开发者工具配合 PHP 调试的实用技巧
PHP 输出的内容最终是 HTML 响应体的一部分,浏览器看不到 var_dump 很可能是被 CSS 隐藏、被 JS 清空,或输出在 HTML 文档之外(比如 header 已发送后才调用 var_dump 导致报错)。
立即学习“PHP免费学习笔记(深入)”;
- 右键网页 → “查看页面源代码”,确认
var_dump输出是否真出现在 HTML 源码里(而不是被 JS 动态删掉) - 打开 Chrome DevTools → Network 标签 → 刷新页面 → 点击对应 PHP 请求 → 查看 “Response” 选项卡,这里能看到原始输出,包括被 HTML 标签包裹前的纯文本
- 若调试信息混在大量 HTML 中难以定位,可在输出前加唯一标识,例如:
echo '<!-- DEBUG START -->'; var_dump($_POST); echo '<!-- DEBUG END -->'; - 注意:开启
display_errors = On和error_reporting = E_ALL在php.ini中,否则语法错误或 Notice 级别问题不会显示
真正卡住的地方往往不是函数怎么写,而是没分清“编辑器”和“运行环境”的职责边界——DW 不解析 PHP,它只管写;调试成败取决于你有没有让 PHP 代码跑在能执行它的地方,并且知道去哪里找输出结果。











