Автор Тема: Опять чтение файла  (Прочитано 3167 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн 3ABXO3

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 3
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
Опять чтение файла
« : 15 Декабря 2001, 06:52:11 »

$file = file("base.dat");
for ($j=0; $j$mess = explode("|", $file[$j]);
?>



$j++;
}
?>


Как сделать так, что-бы скрипт показывал последние n записей в файле?

И как показать все, кроме n последних?

Спасибо заранее.

Оффлайн Britva

  • Координатор
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 1660
  • +0/-0
  • 0
    • Просмотр профиля
    • http://eugeny.com
Опять чтение файла
« Ответ #1 : 15 Декабря 2001, 11:53:14 »
последние $n:
$total = sizeof($file);
for($j=$total-$n-1;$j<$total;$j++) {
...
}

кроме $n последних:
for($j=0;$j<$total-$n;$j++) {
...
}
Евгений aka Razor,

Оффлайн 3ABXO3

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 3
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
Опять чтение файла
« Ответ #2 : 15 Декабря 2001, 20:56:55 »
Спасибо, сработало.
Только не $total-$n-1, а $total-$n. Ну да ладно.

И еще.

1.     Как сделать, что бы записи выносились в мере убывания, т.е. самые новые сначала, потом постарее? Например, не линия1 линия2 линия3 линия4 линия5, а линия5 линия4 линия3 линия2 линия1.

2.     Как удалить строку из файла, где первое поле=$id?

Например:

id=6 -> удалить линию:

|6|Ded|Moroz
« Последнее редактирование: 15 Декабря 2001, 21:51:58 от 3ABXO3 »

Оффлайн Гарик Новиков

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 22
  • +0/-0
  • 0
    • Просмотр профиля
Опять чтение файла
« Ответ #3 : 16 Декабря 2001, 00:13:31 »
Цитировать
Как сделать, что бы записи выносились в мере убывания, т.е. самые новые сначала, потом постарее? Например, не линия1 линия2 линия3 линия4 линия5, а линия5 линия4 линия3 линия2 линия1.

попробуй занести в массив, сделай ну например

$content=file($file);;
$content=array_reverse ($content);

а потом выводи с первого элемента....
насколько я понял должно сработать..
ну не тормоз я... думаю просто долго

Оффлайн 3ABXO3

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 3
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
Опять чтение файла
« Ответ #4 : 18 Декабря 2001, 02:30:40 »
Да, но как это связать с таким кодом?



$file = file("base.dat");
$total = sizeof($file);
$n = 7;
for($j=$total-$n;$j<$total;$j++) {
$mess = explode("|", $file[$j]);
?>



}
?>

Оффлайн Britva

  • Координатор
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 1660
  • +0/-0
  • 0
    • Просмотр профиля
    • http://eugeny.com
Опять чтение файла
« Ответ #5 : 18 Декабря 2001, 08:05:07 »
можно array_splice()\'ом удалить эл-ты массива, а потом уже вызывать array_reverse()
Евгений aka Razor,

Оффлайн Гарик Новиков

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 22
  • +0/-0
  • 0
    • Просмотр профиля
Опять чтение файла
« Ответ #6 : 18 Декабря 2001, 08:50:33 »
посмотри
http://forums.webscript.ru/showthread.php?s=&threadid=2834
я там много спрашивал...
потом покапался РНР-скриты там скриптик неплохой присмотрел... называется
easynews (спасибо создателю)
вывод на экран там идет нормально... т.е. последние несколько новостей....
а вот с редактированием я сейчас ковыряюсь.....
в принципе таже задача.....
если хочешь я думаю на днях допишу кину тебе....
ну не тормоз я... думаю просто долго

 

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28