2010-08-20 32 views
8

Tôi nghĩ rằng điều này có lẽ là rất đơn giản nhưng tôi có thể có được đầu của tôi xung quanh! Làm thế nào tôi có thể đặt mỗi kết quả vòng lặp trong một biến chỉ? ví dụ,php foreach: đặt mỗi kết quả vòng lặp vào một biến

$employeeAges; 
$employeeAges["Lisa"] = "28"; 
$employeeAges["Jack"] = "16"; 
$employeeAges["Ryan"] = "35"; 
$employeeAges["Rachel"] = "46"; 
$employeeAges["Grace"] = "34"; 

foreach($employeeAges as $key => $value){ 
    $string = $value.','; 
} 

echo $string; 
// result 34, 
// but I want to get - 28,16,35,46,34, - as the result 

Rất cám ơn, Lau

Trả lời

1
$string .= $value.','; 

Sử dụng concatenation, đặt dấu chấm trước dấu bằng.

Bạn có thể sử dụng cú pháp tiết này:

$string = $string . $value . ','; 
+0

cảm ơn rất nhiều! :-) – laukok

3
foreach($employeeAges as $key => $value){ 
    $string .= $value.','; 
} 

Bạn đang đặt lại chuỗi của bạn biến mỗi lần qua vòng lặp của bạn. Làm việc trên nối các giá trị $ vào chuỗi $ cho mỗi vòng lặp lặp lại.

+0

cảm ơn rất nhiều! :-))) – laukok

2

Um, còn cái này thì sao?

$string = ""; 
foreach($employeeAges as $key => $value){ 
    $string .= $value.','; 
} 

Bạn đang đặt lại biến mỗi lần, điều này bắt đầu bằng chuỗi trống và nối thêm vào mỗi lần. Nhưng có nhiều cách để thực hiện các tác vụ như vậy, chẳng hạn như implode trong trường hợp này.

+0

cảm ơn bạn rất nhiều! :-) – laukok

2

Hãy thử

$string = ''; 
foreach($employeeAges as $key => $value){ 
    $string .= $value.','; 
} 

Với $ string = $ value ''. bạn đang ghi đè $ string mỗi lần, vì vậy bạn chỉ nhận được giá trị cuối cùng.

+0

cảm ơn rất nhiều! :-) – laukok

9

Cân nhắc sử dụng implode cho trường hợp cụ thể này.

$string = implode(',', $employeeAges); 
7

Bạn cũng có thể thử

$string = ''; 
foreach($employeeAges as $value){ 
    $string .= $value.','; 
} 

Tôi cố gắng đó và nó hoạt động.

1

Hãy thử tiếng vang này phải là bên trong sau đó {} trở ok

$employeeAges; 
    $employeeAges["Lisa"] = "28"; 
    $employeeAges["Jack"] = "16"; 
    $employeeAges["Ryan"] = "35"; 
    $employeeAges["Rachel"] = "46"; 
    $employeeAges["Grace"] = "34"; 

    foreach($employeeAges as $key => $value){ 
     $string = $value.','; 
     echo $string; 

    } 

    // result - 28,16,35,46,34, - as the result 

hoặc khác cách

foreach($employeeAges as $key => $value){ 
      $string .= $value.','; 

     } 
      echo $string; 
1

Input:

$array = [1,2,3,4] 

Lưu tất cả dữ liệu trong một chuỗi:

$string = ""; 
    foreach($array as $key => $value){ 
     $string .= $value.','; 
    } 

Output:

$string = '1,2,3,4,' 

Di ngoái dấu phẩy:

$string = rtrim($string, ','); 

Output:

$string = '1,2,3,4' 

Thông tin thêm về:

concatenation;

rtrim.

Các vấn đề liên quan