我有一个公共页面:default.php<?php ________Some Codes________?>我的项目有100 多个 .php文件。(是的,所有文件都位于require_once 'default.php';所有页面的第一行)现在,我决定在除2alert之外的所有文件中显示。(比如1.php和2.php)。当然,我会将其添加alert到我的default.php中。所以现在我的default.php看起来像:<?php________Some Codes_______echo $comn_alert = "<script>alert('Hi');</script>";?>问题:如何停止在1.php和2.php$comn_alert上执行?
2 回答
PIPIONE
TA贡献1829条经验 获得超9个赞
几种做法:
您可以使用
$_SERVER['PHP_SELF']
indefault.php
检查它是否包含在1.php
或2.php
您可以稍微重构您的包含结构:将 的通用逻辑(即所有
default.php
文件中使用的逻辑)提取到另一个文件(例如)中,并要求该文件并包含有问题的代码(例如)。然后只需要default_minimal.php
default.php
alert()
1.php
2.php
default_minimal.php
1.php
在 require 中和之前设置一个变量2.php
,然后检查default.php
该变量是否存在。
慕盖茨4494581
TA贡献1850条经验 获得超11个赞
在包含文件之前定义一个常量,然后检查该常量是否在 中定义default.php。如下所示:
1.php:
<?php
define('AVOID_ALERT_1',1);
require_once('default.php');
2.php:
<?php
define('AVOID_ALERT_2',1);
require_once('default.php');
默认.php:
<?php
// __some__codes
if(!(defined('AVOID_ALERT_1') || defined('AVOID_ALERT_2'))){
echo $comn_alert = "<script>alert('Hi');</script>";
}
- 2 回答
- 0 关注
- 96 浏览
添加回答
举报
0/150
提交
取消