如何通过http协议从root访问脚本?

时间:2016-04-27 23:58:53

标签: php

我有这个文件夹结构:

\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

2 个答案:

答案 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);