У меня проблема. Я хочу поместить даты в массив, но когда я делаю print_r (), я получаю только последнее значение из флажка.
Мой код:
$id = Input::get('id');
$aObjects = Input::get('aObjects');
$iCount = count($aObjects);
for($i=0; $i < $iCount; $i++)
{
$test = array ($aGoupes = array(
'idGroupe' => $id,
'idObject' => $aObjects[$i]
));
}
echo '<pre>';
print_r($test);
echo '</pre>';
Выход:
Array
(
[0] => Array
(
[idGroupe] => 6
[idObject] => 8
)
)
Таким образом, проблема в том, что в эту таблицу помещается только последнее значение, отмеченное флажком. Пожалуйста, помогите мне!! Thnx
Ваша проблема в том, что вы сбрасываете $test
каждый раз.
Попробуй это:
$id = Input::get('id');
$aObjects = Input::get('aObjects');
$iCount = count($aObjects);
$test = array();
for ($i = 0; $i < $iCount; $i++) {
$test[] = array (
'idGroupe' => $id,
'idObject' => $aObjects[$i]
);
}
echo '<pre>';
print_r($test);
echo '</pre>';
Я не слишком уверен, что должен делать ваш код, но idGroupe всегда будет одинаковым в каждом массиве, так как вы устанавливаете его в $id
который никогда не меняется. Впрочем, это может быть правильно.
Других решений пока нет …