PHP代码必须放在.php文件中并由服务器解析才能执行,浏览器直接打开.html文件时PHP代码会被原样输出;需正确配置服务器(如Apache或Nginx)、使用标准标签、避免嵌套在HTML/JS中,并注意路径、输出时机与安全过滤。

PHP代码必须放在.php文件里才能执行
浏览器直接打开.html文件时,PHP代码会被当作文本原样输出,根本不会执行。服务器必须识别出这是PHP文件,并调用PHP解析器处理其中的块。所以第一步永远是:把网页保存为index.php,而不是index.html。
常见错误现象:
页面上直接看到这段文字,或者空白一片但没报错——基本就是文件后缀不对,或服务器根本没启用PHP模块。
- Apache需加载
libphp.so(Linux)或php_module(Windows),且AddType application/x-httpd-php .php已配置 - Nginx需配合
fastcgi_pass指向PHP-FPM进程,不能只靠location ~ \.php$就认为能跑 - 本地开发推荐用
php -S localhost:8000起内置服务器,它只响应.php文件
标签必须成对出现,且不能嵌套在HTML注释或JS字符串里
PHP解析器只认标准的标签边界。写成或var html = "";,这些PHP代码都不会被解析——它们在到达PHP引擎前,就已经是HTML或JS的一部分了。
正确做法是:把PHP逻辑放在HTML结构之外,用echo或print输出动态内容:
立即学习“PHP免费学习笔记(深入)”;
PHPCMS V9采用OOP(面向对象)方式进行基础运行框架搭建。模块化开发方式做为功能开发形式。框架易于功能扩展,代码维护,优秀的二次开发能力,可满足所有网站的应用需求。 PHPCMS V9企业黄页主要特色1、模型自定义,支持模型添加、修改、删除、导出、导入功能;2、模型字段自定义,支持模型字段添加、修改、删除、禁用操作;3、分类无限添加,支持批量多级添加;4、新增附件字段功能,实现相同模型,不
欢迎,
当前时间:
- 避免在
标签内混写PHP,除非你明确知道输出的是合法JS语法(比如var user_id = ;) -
short_open_tag(?>)默认关闭,不要依赖;坚持用 - 注意
htmlspecialchars(),否则用户输入可能破坏HTML结构或引发XSS
变量作用域和输出时机决定内容是否可见
PHP代码从上到下执行,所有echo、print、include等输出操作,都按实际执行顺序写入HTTP响应体。如果在里echo了一段JS,它真会出现在里;但如果在之后又echo,那内容就会跑到HTML闭合标签后面——浏览器通常会忽略,但源码里能看到。
- 用
ob_start()+ob_get_clean()可捕获中间输出,适合拼接模板片段 -
include和require是直接嵌入PHP文件内容,不是“加载”,所以被包含文件也必须是.php后缀 - 函数内定义的变量默认不作用于全局,别指望在
include的文件里直接用主文件里的局部变量
静态资源(CSS/JS/图片)不受PHP影响,但路径容易出错
PHP只处理.php文件本身,这种引用仍由浏览器发起HTTP请求,服务器按路径返回原始文件。问题常出在:PHP脚本路径变了(比如从/page.php变成/admin/page.php),相对路径./css/main.css就失效了。
- 统一用绝对路径:
(根目录起始) - 或用PHP动态生成路径:
;%20?>/images/logo.png)
- 别在CSS文件里写
——除非你把.css也配置成PHP解析,这反而增加开销且易出缓存问题
PHP嵌入网页本质是服务端渲染,关键点始终落在:文件后缀、服务器配置、标签位置、输出控制。最常卡住的地方不是语法,而是以为“写进HTML就能跑”,结果连解析器都没触发。










