繁体   English   中英

PHP中的“=>”是什么意思?

[英]What does “=>” mean in PHP?

下面代码中的=>运算符是什么意思?

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

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

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

  1. 处理整数用户列表
  2. 使得每个用户的值等于或大于密码

以上对我来说没有意义。

=>是关联数组的分隔符。 在 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

这意味着将密钥分配给 $user 并将变量分配给 $pass

当你分配一个数组时,你这样做

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

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

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

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

作为旁注,排除第二个值并不像您想象的那样工作。 而不是只给你钥匙,它实际上只给你一个价值:

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

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

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

像“a => b”这样的代码意味着,对于关联数组(某些语言,如Perl ,如果我没记错的话,称其为“散列”) ,“a”是键,“b”是值。

您可能想查看至少以下文件的文档:

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

例如,这段代码:

$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 编写,如下所示; ">="
大多数从 C 派生的语言都是一样的:C++、JAVA、PHP、......


作为一条建议:如果您刚开始使用 PHP,您绝对应该花一些时间(可能是几个小时,甚至可能是半天甚至一整天)来阅读手册的某些部分:-)
对你很有帮助!

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)

默认情况下,PHP 中的数组是关联数组(也称为字典或哈希)。 如果你没有明确地为一个值分配一个键,解释器会默默地为你做这件事。 因此,您在那里得到的表达式遍历$user_list ,使键可作为$user ,而值可作为$pass作为foreach主体中的局部变量使用。

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

在这种情况下,它的名称是$user并且它的值是$pass

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM