php从另一个文件调用另一个函数的变量并将其传递给数组

时间:2013-06-29 18:25:51

标签: php

我有a.php文件

它有4个功能。每个函数都有一个变量

function1有$ var1 function2有$ var2 function3有$ var3 function4有$ var4

我将所有四个变量都设置为全局

我还有另一个文件b.php

我想从a.php调用这4个变量,并在b.php

中的数组上设置它们

我做的是这个(但它不起作用):

我添加了

include ('a.php file path');
$myArray = array($var1,$var2,$var3,$var4);

2 个答案:

答案 0 :(得分:0)

您需要使用global keyword。以下是关于变量范围的要记住的事项:

  • 在类或函数中声明的变量将自动限定为该类或函数。
  • 在任何类或函数之外声明的变量默认为全局变量。
  • 如果你想在一个函数中使用一个全局变量,你必须使用global关键字,所以PHP知道你的意思是使用全局,而不是一些同名的本地。

这是一个例子,仅使用$ var1。其他变量将使用相同的技术。

b.php

$var1 = "blah";

a.php只会

// including b.php causes the global $var1 to be defined
include "b.php";

// outside of any class or function, $var1 refers to the global
echo ($var1 . "\n");  // prints "blah"

function x() {
    $var1;  // This is a local variable, not the global one.

    // within this function, $var1 has not been defined, so you get a blank
    // (or perhaps a Notice depending on your log settings) when you try
    // to print it out.
    echo ($var1."\n"); 
}

function y() {
    // This is how you tell PHP you wish to use a global variable from
    // inside a function.
    global $var1;

    echo ($var1."\n");
}

x();
y();

答案 1 :(得分:0)

我已经解决了这个问题:

我将a.php与b.php合并,因此b.php文件不需要额外的“include”命令,我认为它永远不能用于jpgrah

之后,我只是从函数内部调用变量:

function1($var1);
function2($var2);
function3($var3);
function4($var4);

然后在array($var1,$var2,$var3,$var4);

中设置值

这很有效!

谢谢