Php 这个代码是做什么的?(2)

Php 这个代码是做什么的?(2),php,foreach,Php,Foreach,我不理解=>部分 foreach ($_POST[‘tasks’] as $task_id => $v) { 它在foreach循环中做什么?在PHP中,所有数组都是关联数组。对于数组中的每个键和值对,键被分配给$task_id,值被分配给$v。如果不指定另一个键,则该键是基于0的整数索引,但它可以是任何您想要的,只要该键只使用一次,尝试重用它将意味着用新值覆盖旧值。在PHP中,所有数组都是关联数组。对于数组中的每个键和值对,键被分配给$task_id,值被分配给$v。如果不指定另一个键

我不理解=>部分

foreach ($_POST[‘tasks’] as $task_id => $v) {

它在foreach循环中做什么?

在PHP中,所有数组都是关联数组。对于数组中的每个键和值对,键被分配给$task_id,值被分配给$v。如果不指定另一个键,则该键是基于0的整数索引,但它可以是任何您想要的,只要该键只使用一次,尝试重用它将意味着用新值覆盖旧值。

在PHP中,所有数组都是关联数组。对于数组中的每个键和值对,键被分配给$task_id,值被分配给$v。如果不指定另一个键,则该键是基于0的整数索引,但它可以是任何您想要的,只要该键只使用一次,尝试重用它将意味着用新值覆盖旧值。

foreach循环遍历数组中的每个项,就像for循环一样。在本例中,$task_id是键,$v是值。例如:

$arr = array('foo1' => 'bar1', 'foo2' => 'bar2');
foreach ($arr as $key => $value)
{
  echo $key; // Outputs "foo1" the first time around and "foo2" the second.
  echo $value; // Outputs "bar1" the first time around and" bar2" the second.
}
如果未指定任何键,如以下示例中所示,它将使用默认索引键,如下所示:

$arr = array('apple', 'banana', 'grape');
foreach ($arr as $i => $fruit)
{
  echo $i; // Echos 0 the first time around, 1 the second, and 2 the third.
  echo $fruit;
}

// Which is equivalent to:
for ($i = 0; $i < count($arr); $i++)
{
  echo $i;
  echo $arr[$i];
}

foreach循环遍历数组中的每个项,很像for循环。在本例中,$task_id是键,$v是值。例如:

$arr = array('foo1' => 'bar1', 'foo2' => 'bar2');
foreach ($arr as $key => $value)
{
  echo $key; // Outputs "foo1" the first time around and "foo2" the second.
  echo $value; // Outputs "bar1" the first time around and" bar2" the second.
}
如果未指定任何键,如以下示例中所示,它将使用默认索引键,如下所示:

$arr = array('apple', 'banana', 'grape');
foreach ($arr as $i => $fruit)
{
  echo $i; // Echos 0 the first time around, 1 the second, and 2 the third.
  echo $fruit;
}

// Which is equivalent to:
for ($i = 0; $i < count($arr); $i++)
{
  echo $i;
  echo $arr[$i];
}

从上下文来看,$_POST['tasks']似乎是某种数组。该foreach获取该数组中的每个键/值对,并将键放在$task_id中,将值放在$v中。例如,如果您有:

$a['q'] = "Hi";
$a[4] = "BLAH";

在第一次迭代中,$task_id将是'q',$v将是Hi。在第二次迭代中,$task_id将是4,而$v将是空的。

从上下文来看,$_POST['tasks']似乎是某种数组。该foreach获取该数组中的每个键/值对,并将键放在$task_id中,将值放在$v中。例如,如果您有:

$a['q'] = "Hi";
$a[4] = "BLAH";


在第一次迭代中,$task_id将是'q',$v将是Hi。在第二次迭代中,$task_id将是4,而$v将是空话。

我建议在这里提问之前先阅读语言文档。您可以在这里找到PHP语言文档,这是一个很好的问题,因为它是具体的、清晰的,许多人都想知道它的答案。科巴尔:这是真的,但它非常基本。我从来没有投过反对票,也不打算投反对票,但我可以看到反对票是从哪里来的。在语言文档中有一些问题可以比这里更好地回答。我建议在这里提问之前先阅读语言文档。您可以在这里找到PHP语言文档,这是一个很好的问题,因为它是具体的、清晰的,许多人都想知道它的答案。科巴尔:这是真的,但它非常基本。我从来没有投过反对票,也不打算投反对票,但我可以看到反对票是从哪里来的。在语言文档中有一些问题可以比这里更好地回答。我不确定您对语法的理解是否正确?是的$task_id是键,$v是映射到该键的值。PHP中的数组是一个关联数组。虽然是的,但我的措辞应该改进。让我来做,好的。您的答案的措辞表明$task_id和$v具有相同的值。我认为这明显更好。我不确定您对语法的理解是否正确?是的$task_id是键,$v是映射到该键的值。PHP中的数组是一个关联数组。虽然是的,但我的措辞应该改进。让我来做,好的。您的答案的措辞表明$task_id和$v具有相同的值。我认为这明显更好。看起来更像一个映射而不是数组。@Pablo:PHP“数组”是非常有用的小东西,可以用作映射或数组。实际上,我认为最好说所有PHP数组都是关联数组。默认情况下,键是一个基于0的整数值,但您可以随意设置。看起来更像是一个映射而不是数组。@Pablo:PHP“数组”是非常有用的小东西,可以用作映射或数组。实际上,我认为最好说所有PHP数组都是关联数组。默认情况下,键是一个基于0的整数值,但您可以随意设置。