包含的文件获取未定义的变量

时间:2015-07-02 02:19:37

标签: php include

无法找到解决我的代码问题的答案。

file.php:

if(isset($_GET['season1'])) {

    $season1 = $_GET['season1'];
    $url = 'http://www.imdb.com/title/'.$season1.'/episodes?season=1';

    $imdb_content = file_get_contents($url);
    $html = str_get_html($imdb_content);

    //Grabbed Content
    $resultarray = array();
    foreach($html->find('strong a[itemprop="name"]') as $results) {
        $resultarray[] = $results;
    }

    echo $resultarray[0];
    echo $resultarray[1];

} 
else {
        header("Location: ../");
}

的index.php:

    include("http://example.com/file.php?season1=".urlencode($imdbid));
(...)
<div class="row">
<div class="tech-spec-element col-xs-20 col-sm-10 col-md-5"> <span title="Episode 1"></span>1 - <?= $resultarray[0]; ?>
<div></div>
</div>
<div class="tech-spec-element col-xs-20 col-sm-10 col-md-5"> <span title="Episode 2"></span>2 - <?= $resultarray[1]; ?>
<div></div>
</div>
<div class="tech-spec-element col-xs-20 col-sm-10 col-md-5"> <span title="Episode 3"></span>3 - <?= $resultarray[2]; ?>
<div></div>
</div>
<div class="tech-spec-element col-xs-20 col-sm-10 col-md-5"> <span title="Episode 4"></span>4 - <?= $resultarray[3]; ?>
<div></div>
</div>
</div>

我知道file.php正好被加载,因为它给了我输出但是当我尝试使用$resultarray[0]时;它只是不起作用并说它未定义。

1 个答案:

答案 0 :(得分:0)

您是否在其网址中添加了file.php?为什么?他们在不同的服务器上?如果是这样,您只接收该文件的输出,您将无法访问其中的任何变量。要访问包含的脚本变量,必须包含它以便在本地执行。

因此,例如,如果两个脚本位于同一服务器上,则位于同一目录中,您可以执行index.php

$season = urlencode($imdbid);
include 'file.php';

在您的file.php

if(isset($season)) {
    $season1 = $season;
    //...the rest of your code