通过include调用函数

时间:2011-08-19 02:35:36

标签: php

如何将一个页面包含在另一个页面中;

例如第1页包含第2页。第2页在获得正确的参数之前不会显示任何内容。

这是第2页直接网址调用

www.mypage.com/execute.php?cmd=test

输出是hello world

但是当将相同的页面包含在第1页中时,如

include('execute.php?cmd=test');

$_GET['cmd']=$test;  
include('execute.php');
抱歉,但我觉得你们不太了解我。我试图做的是,第2页有一些内容,只有在需要时才能显示,因此在第2页创建了一个功能,所以我可以调用它。必须在第1页上通过电话查看内容。所以我试图做的通常是'execute.php?cmd = test',但不是这次

2 个答案:

答案 0 :(得分:1)

虽然我认为我理解你要做的是什么,但这是错误的做法。使用您的页面将包含的第三个PHP脚本。这样,您就不必破解$_GET超级全局变量。

<强>包括/ somescript.php

// do something with $cmd
if ($cmd == 'test') echo 'Hello world';

<强> page1.php中

$cmd = 'test';
include 'includes/somescript.php';

<强>使page2.php

$cmd = $_GET['cmd'];
include 'includes/somescript.php';

当然,文件includes/somescript.php不应该像这样执行,它应该包含function或包含您参数的类,然后从您的页面调用。如果您正在进行OO或程序化,请由您自己决定。

程序

<强>包括/ somescript.php

function execute($cmd) {
   // ...
}

<强> page1.php中

include `includes/somescript.php';

execute('test');

面向对象

<强>包括/ somescript.php

class CommandHandler {
    public function execute($cmd) {
        //...
    }
}

<强>使page2.php

include `includes/somescript.php';

$h = new CommandHandler();
$h->execute($_GET['cmd']);

答案 1 :(得分:0)

我想你想这样做:

$test = $_GET['cmd'];

这将适用于两个页面。