Как показать все данные в массиве переменных foreach? - PullRequest
2 голосов
/ 09 июля 2019

У меня есть данные в массиве, и я использую foreach, чтобы показать все данные в массиве, а затем я делаю переменную в foreach.

У меня есть массив

Array ( 
    [0] => 2 
    [1] => 36 
)
$data = Array ( [0] => 2 [1] => 36 );

foreach ($data as $hasil) {
    $allData = $hasil;
}

$array = array(
    'allData' => $allData,
);

print_r($array);

Выход

Array ( 
    [allData] => 36 
)

Но я хочу, чтобы мой вывод был

Array ( 
    [allData] => 2,36 
)

Что я должен кодировать для вывода?

Ответы [ 3 ]

0 голосов
/ 09 июля 2019

Вы можете использовать implode () , чтобы объединить значения массива через запятую, а затем передать эти значения в значение вашего нового массива:

<?php
$data = [2, 36];
$joinedData = implode(',', $data);

$array = array(
 'allData' => $joinedData,
);

print_r($array);

или:

<?php
$data = [2, 36];

$array = array(
 'allData' => implode(',', $data),
);

print_r($array);

Результат:

Array ( [allData] => 2,36 )
0 голосов
/ 09 июля 2019

Вы можете использовать Имплоз ,

$data = Array ( 0 => 2, 1 => 36 );
$array['allData'] = implode(",", $data);
print_r($array);

Демо

выход

Array
(
    [allData] => 2,36
)
0 голосов
/ 09 июля 2019

Ваш текущий подход будет перезаписывать элемент $allData для каждой итерации, поэтому он фактически получит только последний элемент в массиве.

Вы можете использовать implode() вместо клея ,.

$data = array(2, 36);
$allData = array(implode(",", $data));
// echo $allData[0];

Или, если вам не нужен массив, просто строка,

$data = array(2, 36);
$allData = implode(",", $data);
// echo $allData;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...