选择要包含在PHP中的两个文件之一

时间:2010-01-21 21:37:12

标签: php file insert

我为这个愚蠢的问题道歉,但我想知道你是否可以帮助我..

我希望在page.php中插入文件$ cat1或$ cat2 ... 我创建的代码,例如。

<? //config.php
$cat_all = ($cat2 or $cat1);
$cat1 = "cat.php" ;
$cat2 = "../back-up/cat.php"; //default anyway
if(file_exists($cat1)){
    require_once $cat1;
}else{
    require_once $cat2;
}
?>

<? //page.php
require "config.php";
function ShowIndexProd($number){
    $ar = file($cat_all); // <------- input here //
    $sizear = count($ar)-$number;
    $data = explode("#",$ar[$sizear]);
    echo "
    <td class='BoxIndex' width='30%'><a href='prod_show.php?id=$sizear'><IMG SRC='img/$data[5]' width=150 border=0></a> <BR /><BR />
        <B><FONT COLOR='red'> $deti[2] </FONT></B> <BR />
        <B>Price:</B>$rp $data[3] $usd<BR />
        <a href='prodshow.php?id=$sizear'><b><FONT COLOR='#FF6600'> more details... </FONT></b></a>
    </td>";
}

但结果:文件$ cat1或$ cat2打印到html页面,我希望它们作为文件配置.. 任何帮助都会非常感谢,谢谢

3 个答案:

答案 0 :(得分:1)

您需要在@ cat1和@ cat2文件中包含<? ?>个标记。

答案 1 :(得分:0)

当您包含或要求文件时,如果要在包含的文件中运行PHP,则需要具有PHP标记。我看到你正在使用<?(称为短标签),因此需要在代码需要运行的文件中。

在旁注中,您可以考虑转移到长标签<?php,因为这样更便携,但在此阶段这是一个次要考虑因素。

现在,一旦你包含cat.php,它就会在那里运行。因此任何输出都将高于当前脚本输出。如果这是预期的行为那么好。如果不是那么你可能想要考虑输出的位置并包含在那里。

我不确定您要对$cat_all = ($cat2 or $cat1);做什么,因为您似乎在接下来的几行之前没有定义这些值的内容。此外,您在定义后似乎没有在任何地方使用$cat_all

如果包含文件的结果不是您想象的那样,那将是第二个问题,我建议发布另一个问题,其中包含一个或两个cat.php文件的内容以及上面的文件。请记住告诉我们预期的和实际的结果,以便我们可以看到出现问题的地方。

我怀疑你问题的性质以及你因为初学者错误而感到沮丧的事实,当你了解更多有关PHP的信息时,你可能需要提出其他问题。即使我们不承认它,我们也都是初学者。

答案 2 :(得分:-1)

试试include 'config.php'