форум вебмастеро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 — массив. Или вы думаете, что у массива есть конец файла?Ну да. Че то я тормознул. Видимо пора спать |
|
Powered by miniBB forum software © 2001-2008
Powered by miniBB-gzipper. Original size:29298, gzipped size:8491 |