С Новым Годом всех!
Помогите пожалуйста. Я сначала опишу что мне нужно и что есть, а потом спрошу что и как мне сделать. Ситуация такая. Нужен цикл в котором происходит:
- чтение следующей строки файла
- разбиение строки на фрагменты (все данные в строках разделены знаком "|")
- сохранение фрагментов в переменных
- ДОЗАПИСЬ переменных в ассоциативный массив
Наверное это просто, но я только учусь поэтому и элементарные задачи решаются медленно. На данный момент у меня код этого цикла выглядит так.
// Читать следующую строку файла с файловым манипулятором $fh
while ($string = fgets($fh, 4096)):
// разбить прочитанную строку на элемены и сохранить
// их в переменных
list ($id, $name, $url) = explode("|", $string);
// сохранить значения переменных в ассоциативном массиве $files[]
$files = array(
$id => array(
"file_id" => $id,
"file_name" => $name,
"file_url" => $url));
endwhile;
Каким образом, можно, не создавать *ЗАНОВО* многомерный ассоциативный массив $files[] при каждом проходе цикла, а добавлять в него новые данные. Какой нужен код? Я знаю, что в массив можно добавлять новые элементы функцией array_push(). Но не могу сделать код который будет дописывать элементы в многомерный массив (пример массива выше), тем более, в ассоциативный. При каждом проходе цикла, в массив $files[] должен вставляться новый элемент с подэлементами, т.е. схема такая:
массив
существующий ключ
существующий подключ => значение
существующий подключ => значение
существующий подключ => значение
добавляемый ключ
подключ => значение
подключ => значение
подключ => значение