如何在不加载HTML内容的情况下从PHP文件获取变量?
解决PHP引入变量时避免加载HTML/CSS的方法
方法一:抽离变量到独立配置文件
这是最规范的做法,把需要共享的变量单独放在纯PHP配置文件中,彻底分离业务变量与视图代码。
- 在
twitter/目录下新建config.php文件,仅保留变量定义:
<?php $screen_name = "你的目标用户名"; // 其他需要跨文件共享的变量也可在此定义 ?>
- 修改
twitter/index.php,引入配置文件替代原变量定义:
<?php include 'config.php'; // 此处保留原有的HTML、CSS及业务逻辑代码 ?>
- 在
create.php中直接引入配置文件获取变量:
<?php include 'twitter/config.php'; echo $screen_name; ?>
方法二:在目标文件中添加条件判断
如果不想重构现有文件,可以在twitter/index.php中加入判断逻辑,仅当文件被直接访问时才输出HTML/CSS内容,被引入时只执行变量定义。
修改twitter/index.php的结构:
<?php // 先定义需要共享的变量 $screen_name = "你的目标用户名"; // 判断当前文件是否为直接运行的脚本,非直接运行则跳过视图输出 if (__FILE__ === $_SERVER['SCRIPT_FILENAME']) { // 原有的HTML、CSS内容全部放在这个判断块内 ?> <!DOCTYPE html> <html> <head> <style>/* 原CSS代码 */</style> </head> <body> <!-- 原HTML内容 --> </body> </html> <?php } ?>
之后在create.php中使用你原来的代码即可,此时只会加载变量,不会输出多余的可视化内容:
include 'twitter/index.php'; echo $screen_name;
内容的提问来源于stack exchange,提问作者hacker-root
相关产品推荐
相关产品推荐

