包含另一个 PHP 文件不会触发新的 HTTP 请求。您不能像这样将参数传递给包含的文件。引号内的文本必须解析为磁盘上的文件,包括该?parameter=1
部分。
如果要将参数传递给包含的文件,请记住当前范围可用于包含的代码。您可以为全局/局部变量赋值,然后在包含的文件中使用它们。
// run.php
<?php
$name = 'Bob';
include 'inc.php';
?>
// inc.php
<?php
echo "Hi, $name!\n";
?>
更新
不能多次声明同一个函数,即使使用include
. 相反,在页面顶部包含声明函数的文件一次。用于require_once
确保它只发生一次并在找不到文件时中断。然后,在您需要函数效果的任何地方,在您的页面脚本中调用它,而无需执行其他包含。
// run.php
<?php require_once 'sayhi.php'; ?>
<div id="1">
<?php sayhi('Bob'); ?>
</div>
<div id="2">
<?php sayhi('Frank'); ?>
</div>
// sayhi.php
<?php
function sayhi($name) {
echo "Hi, $name!\n";
}
?>
这将创建所需的输出。
<div id="1">
Hi, Bob!
</div>
<div id="2">
Hi, Frank!
</div>