форум вебмастероff на AlfaSpace.NET

Ubuntu и Linux |реактивный бесплатный хостинг | Киноклуб. ВСЁ БЕСПЛАТНО!
база знаний хостинга | правила форума

  Начало ° Ответить ° Статистика ° Опрос ° Регистрация ° Поиск ° FAQ °
Форум вебмастеров на AlfaSpace.NET / The Matrix Has You / count(); help
Автор Сообщение
maxtat
pda killer

1438
# Дата: 2 Авг 2006 12:34


$f = fopen("data.dat","r");
for ($i=1;$i<=count($f);$i++) {
echo $i;
}

Выводит только единицу, хотя в файле много строчек...

digs
Участник

357
# Дата: 2 Авг 2006 13:30 ° Поправил: digs


$f = file("data.dat");
for ($i=1;$i<=count($f);$i++) {
echo $i;
}

maxtat
pda killer

1438
# Дата: 2 Авг 2006 13:35


digs
Спасибо! Работает. Вот только можно пояснить, почему file()?

Connected
Pluged&Played

589
# Дата: 2 Авг 2006 13:50


Если необходимо записать содержимое файла в массив, применяется функция file();

Функция считывает файл data.dat и возвращает в массив, каждый елемент которого соответствует строке в прочитанном файле.

acsid
Alfa Guru

2388
# Дата: 2 Авг 2006 13:51


maxtat
» maxtat
fopen

заганяет фаил в массив стирая его (для презаписи или дозаписи)
» maxtat
file

просто заганяет содержимое в массив ..тобиж читает

maxtat
pda killer

1438
# Дата: 2 Авг 2006 14:06


» acsid
заганяет фаил в массив стирая его (для презаписи или дозаписи)

И почему же это меня не устраивает? тем более что "r" не стирает

maxtat
pda killer

1438
# Дата: 2 Авг 2006 14:09


При file(); не хочет работать feof(); На что можно заменить?

maxtat
pda killer

1438
# Дата: 2 Авг 2006 14:12 ° Поправил: maxtat


потерто аффтором

digs
Участник

357
# Дата: 2 Авг 2006 14:29


» acsid
заганяет фаил в массив стирая его (для презаписи или дозаписи)

Ничего глупее за седня не слышал
fopen - не считывает файл. Она его просто открывает. А затем другими функциями (нупример fread) нужно его читать или записывать.

digs
Участник

357
# Дата: 2 Авг 2006 14:31


» maxtat
При file(); не хочет работать feof(); На что можно заменить?

По идее должен работать. Может что-то не так сделал?

Андрей
Алексеевич

2125
# Дата: 2 Авг 2006 14:48 ° Поправил: Андрей


Пипец.
» acsid
заганяет фаил в массив стирая его (для презаписи или дозаписи)

Нет. Возвращает она не массив — точнее она возвращает ресурс (resource), ссылку на читаемый файл, которая используется для получения содержания в строку (fread), или записи (fwrite), а так же для получения булева «долшло до конца файла» (feof «end of file»).

» digs
По идее должен работать. Может что-то не так сделал?

feof не может работать с file — ведь то, что возвращает file — массив. Или вы думаете, что у массива есть конец файла?

» maxtat
При file(); не хочет работать feof(); На что можно заменить?

Зачем тебе вообще feof? file() берёт весь файл целиком в один массив, где ключи - номера строк, значения - содержание строк соответственно. Пройтись по массиву можно, например, циклом foreach() — справка тут.

digs
Участник

357
# Дата: 2 Авг 2006 15:23


» Андрей
feof не может работать с file — ведь то, что возвращает file — массив. Или вы думаете, что у массива есть конец файла?

Ну да. Че то я тормознул. Видимо пора спать

Ваш ответ

Quote  Bold Style  Italic Style  Underlined Style  URL Link  Email Link  Script AutoTab  Preformatted Text  Отменить *Что это?
... Запретить смайлы


Перед отправкой "нелатинского" текста проверьте кодировку броузера!
 » Логин  » Пароль 
 
Powered by miniBB forum software © 2001-2008
Powered by miniBB-gzipper. Original size:29298, gzipped size:8491

Mp3 Download || Webs Studio™ || Song's Lyrics
eXTReMe Tracker Rambler's Top100 Рейтинг@Mail.ru Форум ТвойWeb [Valid RSS]