2014-09-26 101 views
0

如何在每個循環中對一個字符串進行連接?我在下面做的工作沒有循環沒有問題,但有沒有一種方法可以將循環放在那裏,而不結束$body[{{body}}]並再次啓動它?PHP:Concat在foreach循環中的字符串

$carrier = array (
    'SAS' => array('alias' => 'sas', 'name' => 'SAS'), 
    'British Airways' => array('alias' => 'british_airways', 'name' => 'British Airways') 
); 

$body['{{body}}'] = ''; 

$body['{{body}}'] .= 'Line one'. 

    foreach ($carrier as $key=>$value) { 
     '<option value='.$value['alias'].'>'.$value['name'].'</option>'.; 
    } 

'Line two'. 
'Line three'. 
'Line four'; 

print_r($body); 
+0

僅供參考,你想連接foreach循環內的字符串。你不會說你想要連接一個循環。 – 2014-09-26 15:05:26

回答

1

試試這個 - 你必須連接在foreach循環中產生的每一行。

$carrier = array (
    'SAS' => array('alias' => 'sas', 'name' => 'SAS'), 
    'British Airways' => array('alias' => 'british_airways', 'name' => 'British Airways') 
); 

$body['{{body}}'] = 'Line one'; 

foreach ($carrier as $key=>$value) { 
    $body['{{body}}'] .= '<option value=' . $value['alias'] . '>' . $value['name'] . '</option>'; 
} 

$body['{{body}}'] .= 'Line two'; 
$body['{{body}}'] .= 'Line three'; 
$body['{{body}}'] .= 'Line four'; 

print_r($body); 
+0

仍然一樣。在foreach之後也有行。 '解析錯誤:語法錯誤,意想不到的T_FOREACH在C:\ web \ apache \ htdocs \ esp \ test \ concat.php 12行上' – jmenezes 2014-09-26 15:11:30

+0

對不起,我不小心在那裏留下了一個小點。我會用完整的代碼進行更新。有時簡潔是沒有幫助的:) – 2014-09-26 15:14:59

+0

現在我已經發布了完整的代碼。請注意,我簡化了'$ body ['{{body}}']'的初始化。以'$ body ['{{body}}']。='開頭的每一行都以分號結尾。我沒有測試過它(沒有PHP環境,對不起),但我希望它能工作。 – 2014-09-26 15:22:19

相關問題