как считать несколько строк из массива?

musicant

Новичок
как считать несколько значений из массива?

Добрый день.
Очень нужна ваша помощь.

Есть массив и цикл,считывающий из массива по одному значению.Значения разделены \r\n.
Как сделать вывод двух (трех) значений за один проход цикла?

Спасибо.

$fcontents = file ('news.dat');
$result = array_reverse ($fcontents);
foreach ($result as $msg )
{
print $msg";
}
 

Фанат

oncle terrible
Команда форума
не придирайся.

-~{}~ 05.12.05 15:06:

musicant
мне кажется, твою задачу можно решить проще
 

Фанат

oncle terrible
Команда форума
нет, нельзя.
я же не знаю, какую задачу ты решаешь.

-~{}~ 05.12.05 15:10:

чтобы тебе было понятнее, я тебе сейчас тодже вопросик задам.

-~{}~ 05.12.05 15:12:

у меня тут песенка есть зашибенская. так вот, как бы мне в ней бемолей прибавить? я уж и на октавы нажимал, и за диезы дёргал - ничего не получается.
может подскажете?

вот примерно так выглядит твой вопрос сейчас.
ты не пробовал свои проблемы человеческим языком формулировать?
 

musicant

Новичок
Автор оригинала: Фанат
нет, нельзя.
я же не знаю, какую задачу ты решаешь.

-~{}~ 05.12.05 15:10:

чтобы тебе было понятнее, я тебе сейчас тодже вопросик задам.

-~{}~ 05.12.05 15:12:

у меня тут песенка есть зашибенская. так вот, как бы мне в ней бемолей прибавить? я уж и на октавы нажимал, и за диезы дёргал - ничего не получается.
может подскажете?

вот примерно так выглядит твой вопрос сейчас.
ты не пробовал свои проблемы человеческим языком формулировать?
В файле base.dat находятся Даты и Новости, в конце каждой даты (новости) записан "конец строки".
Нужно вывести все содержимое по парам Дата/Новость
 

Фанат

oncle terrible
Команда форума
да ещё при этом поменять местами дату и новость, поскольку в файле дата небось, записана над новостью?

а почему бы тебе не писать дату на одной строке с новостью, если тебе их надо парами выводить?
 

Фанат

oncle terrible
Команда форума
ну и что? отрезаешь дату от новости и выводишь в разных блоках
 

musicant

Новичок
В моей книге по этому поводу есть только array_slice()

Сейчас качаю полное руководство из FAQ
 

Фанат

oncle terrible
Команда форума
по какому поводу? по поводу отрезать от строки кусочек?
при чём здесь array_slice()?
substr тебе нужен.
читаешь в цикле свои новости, субстром отрезаешь дату и новость, и выводишь в отдельных блоках.

-~{}~ 05.12.05 15:28:

у тебя в файле дата стоит над новостью?
 

Фанат

oncle terrible
Команда форума
ну тогда можешь читать, как делал - по строке за проход.
просто внутри цикла считать до трёх
если 1, то выводишь дату
если 2 - то новость
если 3 - то разделитель новостей
 

musicant

Новичок
А как это будет выглядеть для разделителя?
У меня как такового разделителя нет, просто при записи в файл дописывается \r\n после каждой строки
 

Romashov

экспериментатор
тогда убери пункт "если 3..."
а к пункту "если 2" - допиши "вставить разделитель"
 

Фанат

oncle terrible
Команда форума
о господи.
зачем тебе надо было читать по три строки за раз?
 

musicant

Новичок
Автор оригинала: Фанат
о господи.
зачем тебе надо было читать по три строки за раз?
Понял...

Большое спасибо за помощь и терпение :)

-~{}~ 05.12.05 18:12:

И снова я...

Отрезать дату от конца строки - не проблема.
Но как показать оставшуюся часть строки без даты?
 

Фанат

oncle terrible
Команда форума
musicant
отрезать от строки оставшуюся часть точно так же, как отрезАл дату =)

а ещё сожно сделать между датой и новостью разделитель, к примеру || или что угодно
и использовать [m]explode[/m]
 
Сверху