如何在PHP脚本之间传递变量?

时间:2011-04-15 14:55:21

标签: php parameter-passing arguments

有没有办法在PHP脚本之间传递值和变量?

正式地,我尝试编写登录页面,当用户输入错误的输入时,另一个脚本将检查输入,如果错误,站点返回到最后一个脚本页面并显示“这是错误输入”的警告。为了这个目标,我需要从脚本中传递值。我猜。

问候......:P

7 个答案:

答案 0 :(得分:18)

通过GET传递信息

    header('Location: otherScript.php?var1=val1&var2=val2');

<强>会话

    // first script
    session_start(); 
    $_SESSION['varName'] = 'varVal';
    header('Location: second_script.php'); // go to other

    // second script
    session_start(); 
    $myVar = $_SESSION['varName'];

发布:看看this

答案 1 :(得分:3)

你不能include(或include_oncerequire)另一个脚本吗?

答案 2 :(得分:3)

你应该研究session variables。这涉及将数据存储在链接到特定参考号(“会话ID”)的服务器上,然后由浏览器在每个请求(通常作为cookie)发送。服务器可以看到同一个用户正在访问该页面,并设置$_SESSION超全局以反映这一点。

例如:

<强> a.php只会     

session_start(); // must be called before data is sent

$_SESSION['error_msg'] = 'Invalid input';

// redirect to b.php

<强> b.php

<?php

session_start();

echo $_SESSION['error_msg']; // outputs "Invalid input"

答案 3 :(得分:1)

快速的方法是使用全局变量或会话变量。

global $variable = 'something';

“更好”的方法是包含脚本并通过参数传递变量,如

// script1.php contains function 'add3'
function add3( $value ) {
  return $value + 3;
}

// script2.php
include "script1.php";
echo 'Value is '.add3(2); // Value is 5

答案 4 :(得分:0)

我会说如果你真的需要,你也可以在缓存中存储一​​个变量。

答案 5 :(得分:0)

您可以使用:

答案 6 :(得分:0)

我使用extract()方法在 PHP Scripts 之间传递变量。它看起来像下面的例子:

1。文件 index.php

<?php
$data = [
    'title'=>'hello',
    'content'=>'hello world'
];
extract($data);
require 'content.php';

2. 文件 content.php

<?php 
echo $title;
echo $content;