如何通过 http 协议从根目录访问脚本


How can I access a script out of root by http protocol?

>我有这个文件夹结构:

'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

包含脚本时不需要传递参数,因为它加载到与第一个脚本相同的范围内。这意味着脚本../out/script.php 可以通过 $_GET 变量访问查询字符串参数:

$_GET['arg']

此外,您在计算器中定义的任何变量都将在脚本中可用.php

您可以在包含文件之前实例化$_GET超全局中的一些变量,即

$_GET['arg'] = "value";
require('../../out/script.php');

但在我看来,这并不理想。

如果我是你,我会使用一个无聊的 'ol 全局变量(假设你从全局范围开始):

$arg = 'value';
require('../../out/script.php');

然后简单地像任何其他变量一样使用它(不过,可能会进行一些健全性检查):

if (!isset($arg)) {
    die('Oh my! $arg is not set! Error! Danger!');
}
do_something_with($arg);