我有两个数组:$users[] and $types[]
返回如下结果:
Users = Array ( [0] => 1 [1] => 1 [2] => 1 )
Types = Array ( [0] => 0 [1] => 1 [2] => 0 )
我怎么能叫他们喜欢$user['0]和$types['0]在foreach ?我想这样返回它们:
1, 0
1
1 0
foreach ($users as $index => $code) {
// this return users first number
echo $code;
// i want here to return type first number of array aswell?
}
谢谢,
这很简单:
foreach ($users as $index => $code)
{
echo $users[$index].', '.$types[$index];
}
如果可能的话,每个数组包含不同数量的元素(或者你根本不知道每个数组包含多少个元素),你还应该检查,特定元素是否存在于第二个数组中:
foreach ($users as $index => $code)
{
echo $users[$index].', '.(isset($types[$index]) ? $types[$index] : 'doesn't exist');
}
您也可以使用例如for
loop:
// array indexes start from 0, if it they're not set explicitly to something else
for ($index = 0; $index < count($users); $index++)
{
echo $users[$index].', '.(isset($types[$index]) ? $types[$index] : 'doesn't exist');
}
如果你不检查,如果特定的元素存在于第二个数组中,PHP会产生一个类型为notice的错误,它告诉你你正在访问未定义的offset:
PHP Notice: Undefined offset: X in script.php on line Y
其中X是一个索引(键),它存在于第一个数组中,但不存在于第二个数组中。
注意:您应该始终开发启用显示所有类型的错误,甚至注意,并且总是检查特定索引是否存在于数组中,如果您不确定(例如数组来自用户输入,数据库等)。
我想我明白你的意思了。你可以试试这个
foreach ($users as $i => $element){
echo $users[$i].', '.$types[$i];
}