将全局变量传递给数组

时间:2016-03-16 03:40:22

标签: php wordpress global-variables gravity-forms-plugin

我正在尝试将全局变量传递给重力形式的帖子提交功能。到目前为止,一切都很好,但全局变量。

这是我在另一个函数中声明全局的地方(为了清楚起见,我已经删除了一些其他位):

$gid = null;
function things() {
  $jsondata = file_get_contents('http://urltoothers.com');
  $json = json_decode($jsondata, true);
  global $gid;
  $gid = $json['id_of_json_thing'];
}

这就是我在其他功能中所拥有的:

global $gid;
$body = array(
    'name' => rgar( $entry, '1' ),
    'email' => rgar( $entry, '2' ),
    'id' => $gid,
    );
$json = json_encode($body);

print_r($json);

提交后,我可以看到输出结果id为null:

{"name":"input_1","email":"example@example.com","id":null}

我是否需要将全局变量分配给另一个变量? 我发誓我以前做过这个,我不记得需要做什么。已经有一段时间了。

1 个答案:

答案 0 :(得分:0)

我认为问题可能是在任何功能之外设置$gid = null;。这可能很容易在程序流程中重置。如果您需要它来启动null,请将其设置在您的“事物”中。功能

global $gid;
$gid = null;
$gid = $json['id_of_json_thing'];

当然,正如拉斯克拉特所说,确保$ json [' id_of_json_thing'];本身不是null;