у меня есть текстовой файл, который я читаю скриптом на php, дак вот подскажите как определить конец строки! пробовал читать функциями fread( ) fgetc( ) fgets( ) но не одна из них не вдет символ '\n' fgets( ) вроди как прекращает чтение когда доходит до '\n' но мне это не подходт! мне нужно чтоб я например смог просто сравнить if($с=='\n') (передворительно почитав в $c конец строки) вобщем как на C++ как это сделать в php??
Тут всё немного по-другому... ипользуй функцию file(Разбивает файл со строками в массив и каждому элементу соответствует строка из файла). Да ещё используй foreach. И посмотри мой брут на php там практически тоже самое.
а fgets() и на С++ есть, че не в курсе да=) оно действительно прекращает чтение когда достигнут конец строки. пользуй предыдущие две. скорее всего у тя ошибка не там где чтение из файла а там где определяешь \n
Можно легко подсчитать количество строк в файле: PHP: <? $file_array = file ("file.txt"); if(!$file_array) { echo("Ошибка открытия файла"); } else { $num_str = count($file_array); echo($num_str); } ?>
Твоя ошибка в том, что ты \n заключаешь в одинарные кавычки. У тебя он считается как 2 символа - "\" и "n", надо PHP: if($c=="\n")
ну все-таки чтобы только подсчитать кол-во строк достаточно использовать fgetc(). тем более врядли получится использовать file() для очень больших файлов.
Это я уж ему в аську скидывал... эму типо есть файл со словами, где каждое слово с новой строки, и надо каждое слово записать в свою переменную, вот и всё. Полюбой тут надо пользоваться file и foreach
а разве "\n" пишеться в двойных ковачках????? это константа и насколько я помню пишеться в одинарных!!!! в С точно в одинарных! а задача не подсчитать а прост загонять в переменную по 1 строке! тоесть сначало 1строку (поработал с ней), потом 2 строку .. итд
да действительно в php \n пишеться в двойных кавычках! вобщем то в этом и была ошибка! че надо уже написал! function strread($file) { $z=""; $c=fgetc($file); while($c!="\n"&&!feof($file)) { $z.=$c; $c=fgetc($file); } return $z; } всегото.... ))) всем спасибо за помощь!!!!! а Dr.Check спасиб за старания)))
Хех, все что в двойных интерпретируеца, в одинарных нет)) А воще такой стиль песания ламерский, иначе не назавешь)) Нада была стока песать вместа fgets() ??? )))