2017-08-12 115 views
0

問題:嗨,我很難在PHP中使用foreach,它有字符串數組,然後我將所有這些字符串存儲在單個字符串中或存儲在單個變量中。PHP:在foreach中創建一個字符串數組,然後添加所有字符串數組的結果

目的:我的目的是因爲我想爲我的其他原因做一個echo substr()總數的所有字符串。

什麼我迄今所做的:

<?php 

    $values = array(); 

    foreach ($acknowledgementspecifics as $specifics); 
    { 
    ?> 

    <?php $values = array[]("".$specifics->feetype_name." (".$specifics->month_date.") ".$specifics->payment_amount.", "); ?> 

    <?php 
    } 

// (Combine all Arrays) 

// $totalvalue = (total of all combined strings); 
?> 

回答

2

兩個問題:

  • foreach行末尾的;將創建一個沒有任何主體的循環。它後面的部分是foreach身體一部分。所以刪除;

  • 語法追加到數組不爲$values = array[](...),但$values[] = ...

這些補丁後,你將有一個字符串數組,你再需要連接到一個字符串,就可以用implode做。您需要提供一個分隔符來分隔字符串(例如\n<br>):

$values = array(); 
foreach ($acknowledgementspecifics as $specifics) { 
    $values[] = $specifics->feetype_name . " (". 
       $specifics->month_date . ") ". 
       $specifics->payment_amount . ", "; 
} 
// (Combine all Arrays) 
$totalvalue = implode("\n", $values); 
+0

由於這是最好的答案,容易理解和感謝這些更正。 – Cecatrix

0
如果你想在一個字符串中的所有值存儲在forecah循環,不管用數組,使用 (=)操作

。現在你可以使用substr()函數。 看到代碼 - 使用SUBSTR()函數

<?php 
    $values = ""; 
    foreach ($acknowledgementspecifics as $specifics){ 
     $values. = "".$specifics->feetype_name." (".$specifics->month_date.") ".$specifics->payment_amount.", "; 
    } 

    $totalvalue=$values; // (All Values) 
//now you can use substr() 
?> 
0

將字符串添加到陣列...

$values[] = $specifics->feetype_name 
     ." (".$specifics->month_date.") " 
     .$specifics->payment_amount; 

並把它們加在一起使用或者implode(',', $values)或只是implode($values)

相關問題