Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Подсчет слов в загружаемом ТХТ документе
Форумы портала PHP.SU » » Вопросы новичков » Подсчет слов в загружаемом ТХТ документе

Страниц (1): [1]
 

1. qnt0 - 11 Февраля, 2013 - 19:42:21 - перейти к сообщению
Имеется форма, через которую на сервер загружаются .txt файлы и имя файла записывается в базу.
PHP:
скопировать код в буфер обмена
  1. if (copy($file, "/pr/upload/".$new_name))
  2.         {
  3.      $result = mysql_query("INSERT INTO `tt` (`id`, `name`, `url`, `type`, `lng`, `check`, `author`, `translator`, `style`, `created`, `words`, `idate`, `pdate`) VALUES ('', '$name', '$new_name', '$type', '$lng', '$check', '$author', '$translator', '$style', '$created', '$words', NOW(), '$pdate')");
  4.       if($result == 'true')
  5.       else {echo "Ошибка записи в БД";}
  6.  echo "ВЫПОЛНЕНО";<br>";
  7.         }
  8.    else {echo "Ошибка загрузки.";
  9.  }

Необходимо сделать так, чтобы после загрузки файла (без разницы во временной ли папке или постоянной) автоматически подсчитывалось количество слов в документе (как я понял количество слов считается количеством пробелов). Подскажите пожалуйста, как реализовать подсчет слов в txt файле на PHP
2. etoYA - 11 Февраля, 2013 - 19:46:03 - перейти к сообщению
3. esterio - 11 Февраля, 2013 - 19:56:35 - перейти к сообщению
etoYA
неверно, если я напишу 2 пробела подрят то ето будет 2 слова.
можно например
4. etoYA - 11 Февраля, 2013 - 19:58:30 - перейти к сообщению
esterio пишет:
неверно, если я напишу 2 пробела подрят то ето будет 2 слова.

неверно, для этого есть trim.
(Добавление)
ох, точно, натупил немногоУлыбка
5. qnt0 - 11 Февраля, 2013 - 20:58:04 - перейти к сообщению
Не работает ни то ни другое Меланхолия
Первый вариант выдает все время 1, а второй не работает.
Посмотрите плз что не так?

PHP:
скопировать код в буфер обмена
  1.   $new_name = 'text'.date("dmyAhis").'.'.$type;
  2.   $text = '/upload/'.$newname.;
  3.   $words = preg_match_all('/\s+/', $text);
6. kappa - 11 Февраля, 2013 - 21:01:01 - перейти к сообщению
А как же str_word_count() ?
7. qnt0 - 11 Февраля, 2013 - 22:38:30 - перейти к сообщению

Работает, но только на слова из латинских символов. Подскажите. как сделать чтобы считались и кириллические?
8. etoYA - 12 Февраля, 2013 - 00:43:30 - перейти к сообщению
qnt0 пишет:
Подскажите. как сделать чтобы считались и кириллические?

PHP:
скопировать код в буфер обмена
  1.  
  2. $charlist = 'йцукенгшщзхъфывапролджэячсмитьбюЙЦУКЕНГШЩЗХЪФЫВАПРОЛДЖЭЯЧСМИТЬБЮ';
  3. echo str_word_count(file_get_contents("/pr/upload/$new_name"), null ,$charlist);
  4.  

 

Powered by ExBB FM 1.0 RC1