=>
运算符在以下代码中的含义是什么?
foreach ($user_list as $user => $pass)
Run Code Online (Sandbox Code Playgroud)
该代码是PHP.net上的评论.用户没有指定的值$user_list
,$user
或$通过.我通常认为这=>
意味着等于或大于.
但是,我不确定它的用途,因为它没有分配.我把代码读成了
以上对我没有意义.
hob*_*ave 122
=>
是关联数组的分隔符.在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"
Run Code Online (Sandbox Code Playgroud)
请注意,这也可用于数字索引数组.
例:
$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
Run Code Online (Sandbox Code Playgroud)
Tyl*_*ter 22
这意味着将键分配给$ user,将变量分配给$ pass
分配数组时,就像这样做
$array = array("key" => "value");
Run Code Online (Sandbox Code Playgroud)
它使用相同的符号处理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"
}
Run Code Online (Sandbox Code Playgroud)
Pas*_*TIN 12
像"a => b"这样的代码意味着,对于关联数组(某些语言,如Perl,如果我没记错的话,称之为"hash"),'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");
}
Run Code Online (Sandbox Code Playgroud)
会得到这个输出:
string 'user = user1 and password = password1' (length=37)
string 'user = user2 and password = password2' (length=37)
Run Code Online (Sandbox Code Playgroud)
(我正在使用var_dump
生成一个很好的输出,这有助于debuging;要获得正常的输出,你会使用echo
)
"等于或大于"是另一种方式:"更大或相等",用PHP编写,就像这样; "> ="
对于大多数源自C:C++,JAVA,PHP的语言都是一样的......
作为一条建议:如果你刚刚开始使用PHP,那么你应该花一些时间(可能是几个小时,甚至半天甚至一整天)来完成手册的某些部分:-)
它'你帮了大忙!
PHP中的数组是值的键映射:
$array = array();
$array["yellow"] = 3;
$array["green"] = 4;
Run Code Online (Sandbox Code Playgroud)
如果要对数组中的每个键值对执行某些操作,可以使用foreach
控件结构:
foreach ($array as $key => $value)
Run Code Online (Sandbox Code Playgroud)
$ array变量是您将使用的数组.$ key和$ value变量将在循环的每次迭代中包含键值对foreach
.在这个例子中,它们首先包含"黄色"和3,然后是"绿色"和4.
如果您不关心键,可以使用替代表示法:
foreach ($array as $value)
Run Code Online (Sandbox Code Playgroud)
默认情况下,PHP 中的数组是关联数组(也称为字典或哈希)。如果你没有明确地为一个值分配一个键,解释器会默默地为你做这件事。所以,你已经通过了那里迭代的表达$user_list
,使钥匙可以作为$user
和可作为价值$pass
作为的身体局部变量foreach
。