2012-08-26 22 views
0

我有这个在我的MySQL数据库PHP的MySQL foearch从电子邮件到用户相同的值

email have 5 value 
user have 15 value 

我怎么能循环使用PHP的foreach的东西电子邮件这样

email   user 
[email protected] user1 
[email protected] user2 
[email protected] user3 
[email protected] user4 
[email protected] user5 
[email protected] user6 
[email protected] user7 
[email protected] user8 
-------------------- 
and so on.... 

。 .. 类似于当用户循环电子邮件值时也会循环,并且当它到达电子邮件的值的末尾时,电子邮件将再次开始到第一个邮箱[email protected]

是否可以在foreach上工作,或者做一段时间?

+1

2用户具有相同的电子邮件?奇怪,不应该是相反的方式吗? – Samson

+0

您是否试图在此处制作用户和电子邮件的每个排列组合?你试图做的没有任何意义! – Eric

+0

即时对不起,电子邮件和用户只是例子....对不起,如果我没有说清楚...让我说我有5个水果是'橙,苹果,葡萄,香蕉,猕猴桃'然后我有'用户'在数据库记录15中,它将循环到MR的每个用户......的职位。 NomikOS'下面的答案是一个完美的样本,谢谢你先生。 NomikOS ... – Butternut

回答

0
$e = array('email1', 'email2' /* , more email */); 
$u = array('user1', 'user2', 'user3' /* , more users */); 

$total_e = count($e); 
$total_u = count($u); 
$total = $total_e * $total_u; 

$counting_e = 0; 
$counting_u = 0; 

for ($i = 0; $i < $total; $i ++) 
{ 
    echo nl2br($e[$counting_e ++] . " => " . $u[$counting_u ++] . "\n"); 

    if ($counting_e == $total_e) 
     $counting_e = 0; 
    if ($counting_u == $total_u) 
     $counting_u = 0; 
} 

测试:http://codepad.org/R5PpAKQW

0
$data = array(); 
$i=0; 
foreach($users as $user){ 
if(isset($email[$i])){ 
$data[$email[$i]] = $user; 
} 
else{ 
$i=0; 
$data[$email[$i]] = $user; 

} 
$i++; 
} 
print_r($data); 
0

事情是这样的:

$j=0; 
for ($i=0;$i<count($users);$i++){ 
    if (count($email)<$j+1) 
     $j=0; 
    else 
     $j++; 
echo $users[$i].' has email: '.$email[$j]; 
} 
相关问题