包含一段PHP代码,不能作为单个文件运行

时间:2013-11-20 11:54:42

标签: php html split include

我可以将一些PHP代码拆分为2个非功能性部分(创建文件),然后以某种方式包含它们以便它们像初始文件一样工作吗?可能不太清楚我想做什么,所以这里是一个例子: 我有一个page.php,其中包含php和html代码。 类似的东西:

<html>
<head>
</head>
<body>
some html code....
<?php if (condition) { ?>
some html code...
<?php } else { // some php redirect code or something similar } ?>
</body>
</html>

我可以将2个php文件中的php代码转换并包含它们以便我可以在多个文件中使用它们吗?像condition.php和end_condition.php这样的东西,并使用include'...';或要求'...';。

3 个答案:

答案 0 :(得分:1)

您可以将代码的任何部分放入外部文件中,并include / require但是,每个单独的文件都需要完整且语法正确。您不能在中间拆分if..else语句。所以,不会工作:

file1.php

<?php

if ($foo) {
  ...
include 'file2.php`;

file2.php

<?php

} else {
  ...
}

然而,这可以正常工作:

<?php

    if ($foo) {
        include 'foo.php';
    } else {
        include 'bar.php';
    }

include不像复制和粘贴一样有效。每个PHP文件都需要自己执行。

答案 1 :(得分:0)

类似的东西......如果需要导入文件,可以使用 require 然后 include

if(condition){
     include 'end_condition.php';
}else{
     include 'condition.php';
}

或在一行中(尽管我从未尝试过,只需尝试一下。)

condition ? include 'end_condition.php' : include 'condition.php';

答案 2 :(得分:0)

使用require_once()包含其他php源文件:

<html>
<head>
</head>
<body>
some html code....
<?php if (condition) { require_once('file1.php'); } 
 else { require_once('file2.php'); } ?>
</body>
</html>

file1.php:

<?php echo 'condition is true'; ?>

file2.php:

<?php echo 'condition is false'; ?>