Думаю, это очень просто, но я могу разобраться! Как я могу поместить каждый результат цикла только в одну переменную? например,
$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
Большое спасибо, Лау
А как насчет этого?
$string = "";
foreach( $employeeAges as $key => $value){
$string .= $value.',';
}
Вы каждый раз сбрасываете переменную, это начинается с пустой строки и каждый раз что-то добавляет. Но, вероятно, есть более эффективные способы решения таких задач, например implode в этом случае.
Попробуйте
$string = '';
foreach( $employeeAges as $key => $value){
$string .= $value.',';
}
с $ string = $ value. ','; вы каждый раз перезаписываете $ string, поэтому вы получаете только последнее значение.
foreach( $employeeAges as $key => $value){
$string .= $value.',';
}
Вы сбрасываете строковую переменную каждый раз во время цикла. Выполнение описанного выше объединяет $ value в $ string для каждой итерации цикла.
$string .= $value.',';
Используйте конкатенацию , ставьте точку перед знаком равенства.
Вы можете использовать этот подробный синтаксис:
$string = $string . $value . ',';
Рассмотрите возможность использования имплода для этого конкретного сценария.
$string = implode(',', $employeeAges);