在PHP文件之间传递数据

在PHP文件之间传递数据,php,http,header,Php,Http,Header,这里我有foo.php,它在后台运行,没有任何HTML,用户从未访问过它 <?php if (isset($_GET['data'])) { $bar = $_GET['data']; // data comes from a html form on another page. $str = strtoupper($bar); echo $str; } 这只是一个简单的示例,但假设我不想将$str传递给另一个文件script.php进行额外处理 最好的方法是什么?我能想到

这里我有foo.php,它在后台运行,没有任何HTML,用户从未访问过它

<?php
 if (isset($_GET['data'])) {

 $bar = $_GET['data']; // data comes from a html form on another page.

 $str = strtoupper($bar);

 echo $str;
}
这只是一个简单的示例,但假设我不想将$str传递给另一个文件script.php进行额外处理


最好的方法是什么?我能想到的唯一方法是将它发布到数据库中,然后在script.php中检索它?

如果在另一个php脚本Y中包含或需要一个php脚本X,Y将访问所有X数据和函数。您还可以使用@sanki commented之类的会话。

如果您在另一个php脚本Y中包含或需要一个php脚本X,Y将访问所有X数据和函数。您也可以使用@sanki注释之类的会话。

类似这样的会话可能是一种简单的方法:

您可以使用if语句生成函数

foo.php:

<?php
    function fooFunction() {
        if (isset($_GET['data'])) {

            $bar = $_GET['data']; // data comes from a html form on another page.
            $str = strtoupper($bar);

            return $str;
        }
    }
?>
<?php
    session_start();

    if (isset($_GET['data'])) {

        $bar = $_GET['data']; // data comes from a html form on another page.
        $str = strtoupper($bar);

        $_SESSION['str'] = $str;
    }
?>
script.php:

<?php
    require_once 'foo.php';

?>
<?php
    session_start();

    echo $_SESSION['str'];

?>
或者,如果您已经有一个会话,可以将其插入会话数组,如下所示:

foo.php:

<?php
    function fooFunction() {
        if (isset($_GET['data'])) {

            $bar = $_GET['data']; // data comes from a html form on another page.
            $str = strtoupper($bar);

            return $str;
        }
    }
?>
<?php
    session_start();

    if (isset($_GET['data'])) {

        $bar = $_GET['data']; // data comes from a html form on another page.
        $str = strtoupper($bar);

        $_SESSION['str'] = $str;
    }
?>
script.php:

<?php
    require_once 'foo.php';

?>
<?php
    session_start();

    echo $_SESSION['str'];

?>

这样做可能是一种简单的方法:

您可以使用if语句生成函数

foo.php:

<?php
    function fooFunction() {
        if (isset($_GET['data'])) {

            $bar = $_GET['data']; // data comes from a html form on another page.
            $str = strtoupper($bar);

            return $str;
        }
    }
?>
<?php
    session_start();

    if (isset($_GET['data'])) {

        $bar = $_GET['data']; // data comes from a html form on another page.
        $str = strtoupper($bar);

        $_SESSION['str'] = $str;
    }
?>
script.php:

<?php
    require_once 'foo.php';

?>
<?php
    session_start();

    echo $_SESSION['str'];

?>
或者,如果您已经有一个会话,可以将其插入会话数组,如下所示:

foo.php:

<?php
    function fooFunction() {
        if (isset($_GET['data'])) {

            $bar = $_GET['data']; // data comes from a html form on another page.
            $str = strtoupper($bar);

            return $str;
        }
    }
?>
<?php
    session_start();

    if (isset($_GET['data'])) {

        $bar = $_GET['data']; // data comes from a html form on another page.
        $str = strtoupper($bar);

        $_SESSION['str'] = $str;
    }
?>
script.php:

<?php
    require_once 'foo.php';

?>
<?php
    session_start();

    echo $_SESSION['str'];

?>

以下是一些可能对您有用的链接:


以下是一些可能对您有用的链接:

使用会话:

在尝试访问$\u会话数组之前,以及在将任何输出发送到浏览器之前,请记住在这两个页面上运行session\u start语句

曲奇:


如@Rizier123所述,Cookies可以被删除或禁用!如果变量非常重要,我们不会这么做。所以最好避免这种方法。

使用会话:

在尝试访问$\u会话数组之前,以及在将任何输出发送到浏览器之前,请记住在这两个页面上运行session\u start语句

曲奇:


如@Rizier123所述,Cookies可以被删除或禁用!如果变量非常重要,我们不会这么做。所以最好避免这种方法。

将数据作为GET参数传递

<?php
 if (isset($_GET['data'])) {

 $bar = $_GET['data']; // data comes from a html form on another page.

 $str = strtoupper($bar);
 echo $str;
 header("Location: script.php?data={$str}");
}

?>
但这将使script.php在当前文件之后立即运行。

将数据作为GET参数传递

<?php
 if (isset($_GET['data'])) {

 $bar = $_GET['data']; // data comes from a html form on another page.

 $str = strtoupper($bar);
 echo $str;
 header("Location: script.php?data={$str}");
}

?>
但这将使script.php在当前文件之后立即运行。

您可以这样做 `php script.php$str`; 以字符串作为命令行参数调用script.php。 你可以做 `php script.php$str`; 以字符串作为命令行参数调用script.php。

我会在script.php文件中包含foo.php文件,并用if语句生成一个函数$_会话[FOO]=$bar;你的问题有答案吗?或者您需要更多信息/示例吗?我会将foo.php文件包含在script.php文件中,并用if语句生成一个函数$_会话[FOO]=$bar;你的问题有答案吗?或者你需要更多的信息/例子吗?永远不要在函数中回音。。。函数返回时,由调用方决定如何处理返回值、回显返回值或将返回值赋给变量以供以后使用use@EliasVanOotegemwups jeah谢谢在复制后忘了更改它从不在函数中回音。。。函数返回时,由调用方决定如何处理返回值、回显返回值或将返回值赋给变量以供以后使用use@EliasVanOotegemwups jeah感谢您在复制后忘记更改它Cookie可以被删除或禁用!如果变量非常重要,则不会执行此操作。可以删除或禁用此操作!如果变量非常重要,我不会这么做