从单独的文件中的数组中提取值

时间:2010-08-19 17:55:18

标签: php

一次。现在我在PHP中遇到了一些非常基本的功能问题。我有一个网页,其中包含以下代码:

  function laserOn()
  {
    $_SESSION['laser'] = TRUE;

    $num_victims = rand(2,125);
    $vic = rand(0, count($victims) - 1);

    print $num_victims." ".$victims[$vic]." have been vaporized!<br />";
  }

和一个单独的文件,victim.php,我有require_once'd,包含

$victims = array(
    1 => "chickens",
    2 => "horses",
    3 => "werewolves",
    4 => "zombies",
    5 => "vampires",
    6 => "cows"
);

但是,该页面仅显示数字和字符串,而不是数组值。我在这里做错了什么?

1 个答案:

答案 0 :(得分:3)

$victims似乎不在您的函数范围内。要在函数范围内使用全局变量,您需要使用global关键字声明它(请参阅php.net文档中的variable scope)。

function laserOn()
{
  global $victims;

  // ... rest of your function
}

或者,您可能需要在函数中包含该数组的文件,但这可能不是所希望的(特别是如果该文件定义了自己的函数!)