什么是“=>”用PHP表示?

时间:2009-08-06 22:12:34

标签: php

=>运算符在以下代码中的含义是什么?

foreach ($user_list as $user => $pass)

该代码是PHP.net上的评论。 用户未指定$user_list$user或$ pass的值。 我通常看到=>表示等于或大于。

但是,我不确定它的用途,因为它没有分配。 我把代码读作

  1. 处理整数用户列表
  2. 使每个用户的值等于或大于密码
  3. 以上对我没有意义。

6 个答案:

答案 0 :(得分:120)

=>是关联数组的分隔符。在该foreach循环的上下文中,它将数组的键指定为$user,将值指定为$pass

示例:

$user_list = array(
    'dave' => 'apassword',
    'steve' => 'secr3t'
);

foreach ($user_list as $user => $pass) {
    echo "{$user}'s pass is: {$pass}\n";
}
// Prints: 
// "dave's pass is: apassword"
// "steve's pass is: secr3t"

请注意,这也可以用于数字索引数组。

示例:

$foo = array('car', 'truck', 'van', 'bike', 'rickshaw');
foreach ($foo as $i => $type) {
    echo "{$i}: {$type}\n";
}
// prints:
// 0: car
// 1: truck
// 2: van
// 3: bike
// 4: rickshaw

答案 1 :(得分:22)

这意味着将键分配给$ user,将变量分配给$ pass

分配数组时,就像这样做

$array = array("key" => "value");

它在foreach语句中使用相同的符号处理数组。 '=>'链接键和值。

根据PHP Manual,'=>'创建了键/值对。

此外,等于或大于相反的方式:'> ='。在PHP中,大于或小于符号总是先行:'> =','< ='。

就像旁注一样,排除第二个值并不像你想象的那样有效。它实际上只给你一个值,而不是只给你一把钥匙:

$array = array("test" => "foo");

foreach($array as $key => $value)
{
    echo $key . " : " . $value; // Echoes "test : foo"
}

foreach($array as $value)
{
    echo $value; // Echoes "foo"
}

答案 2 :(得分:12)

代码“a => b”表示对于关联数组(某些语言,如Perl,如果我没记错的话,请调用那些“哈希”),即' a'是键,'b'是值。

您可能想要查看至少的文档:

在这里,你有一个名为$user_list的数组,你将遍历它,为每一行获取$user中行的键,以及{$pass中的相应值。 1}}。

例如,这段代码:

$user_list = array(
    'user1' => 'password1',
    'user2' => 'password2',
);

foreach ($user_list as $user => $pass)
{
    var_dump("user = $user and password = $pass");
}

会得到这个输出:

string 'user = user1 and password = password1' (length=37)
string 'user = user2 and password = password2' (length=37)

(我正在使用var_dump生成一个很好的输出,这有助于调试;要获得正常的输出,你可以使用echo


“等于或大于”是另一种方式:“更大或相等”,用PHP编写,就像这样; “&GT =”
对于大多数源自C:C ++,JAVA,PHP,...的语言都是一样的。


作为一条建议:如果你刚开始使用PHP,你肯定应该花一些时间(可能是几个小时,甚至半天甚至一整天)通过一些部分手册:-)
它会对你有所帮助!

答案 3 :(得分:6)

PHP中的数组是值的键映射:

$array = array();
$array["yellow"] = 3;
$array["green"] = 4;

如果您想对数组中的每个键值对执行某些操作,可以使用foreach控件结构:

foreach ($array as $key => $value)

$ array变量是您将使用的数组。 $ key和$ value变量将在foreach循环的每次迭代中包含键值对。在这个例子中,它们首先包含“黄色”和3,然后是“绿色”和4。

如果您不关心键,可以使用替代表示法:

foreach ($array as $value)

答案 4 :(得分:4)

默认情况下,PHP中的数组是关联数组(也称为字典或散列)。如果您没有明确地为某个值指定一个键,那么解释器将默默地为您执行此操作。所以,你在那里得到的表达式遍历$user_list,使得密钥可用$user,值$pass可用作foreach正文中的局部变量}。

答案 5 :(得分:3)

$user_list是一个数据数组,当循环播放时可以将其拆分为它的名称和值。

在这种情况下,它的名称为$user,其值为$pass