我有这个文件夹结构:
\out
\script.php
\root
\include
\calculator.php
我需要将该脚本放入\calculator.php
。我怎么能包括它?
// calculator.php
require( what path ? );
..
注意:我可以通过此路径添加它:../out/script.php
。但我还需要将一个参数传递给script.php
。所以我想要这样的东西:
.. what path/script.php?arg=value
如你所知,因为我需要传递一个参数,所以我必须使用http
协议。我只想知道,我如何同时使用http
和../
?像这样:
http://../out/script.php?arg=value
答案 0 :(得分:1)
当您包含脚本时,您不需要传递参数,因为它已加载到与第一个脚本相同的范围内。这意味着脚本../out/script.php可以通过$ _GET变量访问查询字符串参数:
function init(){
canvas = document.getElementById('board');
context = canvas.getContext('2d');
canvas2 = document.getElementById('board2');
context2 = canvas2.getContext('2d');
}
function clearall()
{
context.clearRect(0,0,canvas.width,canvas.height);
}
此外,您在计算器中定义的任何变量都将在script.php中提供
答案 1 :(得分:1)
在包含文件之前,您可以在$_GET
超全局内实例化一些变量,即
$_GET['arg'] = "value";
require('../../out/script.php');
但在我看来,这并不理想。
如果我是你,我会使用一个无聊的全局变量(假设你从全球范围开始):
$arg = 'value';
require('../../out/script.php');
然后简单地使用它就像任何其他变量一样(尽管可能有一些健全性检查):
if (!isset($arg)) {
die('Oh my! $arg is not set! Error! Danger!');
}
do_something_with($arg);