无法在另一个函数

时间:2015-05-15 19:36:09

标签: php arrays

我有一个这样的数组:

function func1()
{
$web( 'news' => 'yes',
      'items' => '');
// I call `$web['item']` and fill it as array:
$web['item'][] = 'item1';
$web['item'][] = 'item2';
$web['item'][] = 'item3';
foreach($web['item'] as $item) echo $item,'-';
//result: item1 - item 2 - item 3 

func2($web)
}

现在一切听起来都不错......但是当我将$ web发送到另一个函数时,它只是打印出来。

function  func2($web)
{
  foreach($web['item'] as $item) echo $item,'-';
  //result: item1 - 
}

我错了什么?

1 个答案:

答案 0 :(得分:0)

你和数组有问题。要声明一个新数组,您有一些选择。我个人喜欢最短的方式:

$web = [];

将所有内容与更正结合在一起。

function func1()
{
    $web = [];
    $web['item'][] = 'item1';
    $web['item'][] = 'item2';
    $web['item'][] = 'item3';
    foreach($web['item'] as $item)
    {
        echo $item.'-';
    }

    echo "<br>";
    func2($web);
}

function func2($web)
{
    foreach($web['item'] as $item)
    {
        echo $item.'-';
    }
}

我添加了echo "<br>";,因此结果将显示在单独的行中。我没有包含对此示例不太有用的行,您可以将它们添加回来。