Форум АНТИЧАТ

Форум АНТИЧАТ (https://forum.antichat.xyz/index.php)
-   PHP, PERL, MySQL, JavaScript (https://forum.antichat.xyz/forumdisplay.php?f=37)
-   -   Конец строки (https://forum.antichat.xyz/showthread.php?t=21126)

nc.STRIEM 30.06.2006 01:14

Конец строки
 
у меня есть текстовой файл, который я читаю скриптом на php, дак вот подскажите как определить конец строки! пробовал читать функциями fread( ) fgetc( ) fgets( ) но не одна из них не вдет символ '\n' fgets( ) вроди как прекращает чтение когда доходит до '\n' но мне это не подходт! мне нужно чтоб я например смог просто сравнить if($с=='\n') (передворительно почитав в $c конец строки) вобщем как на C++
как это сделать в php??

Ch3ck 30.06.2006 02:05

Тут всё немного по-другому...
ипользуй функцию file(Разбивает файл со строками в массив и каждому элементу соответствует строка из файла). Да ещё используй foreach. И посмотри мой брут на php там практически тоже самое. :)

Rabid Rabbit 30.06.2006 02:13

а fgets() и на С++ есть, че не в курсе да=) оно действительно прекращает чтение когда достигнут конец строки. пользуй предыдущие две. скорее всего у тя ошибка не там где чтение из файла а там где определяешь \n

DIAgen 30.06.2006 08:35

Можно легко подсчитать количество строк в файле:
PHP код:

<?
  $file_array 
=  file ("file.txt");
  if(!
$file_array)
  {
    echo(
"Ошибка открытия файла");
  }
  else
  {
    
$num_str =  count($file_array); 
    echo(
$num_str);
  }
?>


SMiX 30.06.2006 09:08

Твоя ошибка в том, что ты \n заключаешь в одинарные кавычки. У тебя он считается как 2 символа - "\" и "n", надо
PHP код:

if($c=="\n"


Trinux 30.06.2006 10:52

Цитата:

Сообщение от SMiX
Твоя ошибка в том, что ты \n заключаешь в одинарные кавычки. У тебя он считается как 2 символа - "\" и "n", надо
PHP код:

if($c=="\n"


Бинго! =)

ZaCo 30.06.2006 11:15

ну все-таки чтобы только подсчитать кол-во строк достаточно использовать fgetc(). тем более врядли получится использовать file() для очень больших файлов.

Ch3ck 30.06.2006 13:11

Цитата:

Сообщение от DIAgen
Можно легко подсчитать количество строк в файле:
PHP код:

<?
  $file_array 
=  file ("file.txt");
  if(!
$file_array)
  {
    echo(
"Ошибка открытия файла");
  }
  else
  {
    
$num_str =  count($file_array); 
    echo(
$num_str);
  }
?>



Это я уж ему в аську скидывал... эму типо есть файл со словами, где каждое слово с новой строки, и надо каждое слово записать в свою переменную, вот и всё.
Полюбой тут надо пользоваться file и foreach :cool:

nc.STRIEM 30.06.2006 19:49

а разве "\n" пишеться в двойных ковачках????? это константа и насколько я помню пишеться в одинарных!!!! в С точно в одинарных!
а задача не подсчитать а прост загонять в переменную по 1 строке! тоесть сначало 1строку (поработал с ней), потом 2 строку .. итд

nc.STRIEM 30.06.2006 20:06

да действительно в php \n пишеться в двойных кавычках! вобщем то в этом и была ошибка! че надо уже написал!

function strread($file)
{
$z="";
$c=fgetc($file);
while($c!="\n"&&!feof($file))
{
$z.=$c;
$c=fgetc($file);
}
return $z;
}

всегото.... )))
всем спасибо за помощь!!!!! а Dr.Check спасиб за старания)))


Время: 13:08