2012-06-21 31 views
0

我得到了如下錯誤:初始化的字符串偏移0和1

verzend mail naar t met attachment: e 
verzend mail naar w met attachment: w 
verzend mail naar r met attachment: a 
verzend mail naar w met attachment: w 
verzend mail naar r met attachment: a 
verzend mail naar w met attachment: w 

Notice: Uninitialized string offset: 0 in /variables.php on line 248 

Notice: Uninitialized string offset: 1 in /variables.php on line 248 
verzend mail naar met attachment: 

這是我的代碼:

<?php 
    $emailString = '[email protected];www.test.nl^[email protected];www.test2.nl^[email protected];www.test3.nl^'; 

    $user = explode("^", $emailString); // urls 
    foreach($user as $a_user) { 

     $user2 = explode(";", $a_user); // emails 
     $a_mailing = array(); 

     foreach ($user2 as $a_user) { 
      $a_mailing[$a_user[0]][] = $a_user[1]; 
     } 

     foreach($a_mailing as $key => $a_values) { 
      foreach($a_values as $value) { 
       echo 'verzend mail naar ' . $key . ' met attachment: ' . $value . '<br />'; 
      } 
     } 
    } 
?> 

誰能幫助我?

+1

哪條線是錯誤行?我們在這裏看不到行號。 –

+4

我想這行:$ a_mailing [$ a_user [0]] [] = $ a_user [1]; – peko

+2

'$ a_user'似乎是一個字符串。不知道你想用'$ a_user [0]'做什麼。另一個問題可能是你在外部'foreach'循環中和內部循環中使用'$ a_user'兩次。 –

回答

1

問題是第一個循環中的$ a_user是一個字符串。例如..在第一次迭代中,$ a_user變量包含這個:「[email protected]; www.test.nl」;

從我可以看到,我相信你只是試圖使用電子郵件地址作爲一個關鍵和URL作爲價值,所以你不需要使用第二個循環。您可以更換:

foreach ($user2 as $a_user) { 
    $a_mailing[$a_user[0]][] = $a_user[1]; 
} 

有:

$a_mailing[$user2[0]][] = $user2[1]; 
0

$a_user是一個刺痛,但需要一個數組!你需要解決這個問題。

相關問題