PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи

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

> Найдено сообщений: 7
neokiev Отправлено: 01 Октября, 2015 - 17:17:42 • Тема: Помогите выбрать фреймворк • Форум: CMS и фреймворки

Ответов: 15
Просмотров: 2854
DeepVarvar пишет:
neokiev пишет:
Symfony2
neokiev пишет:
Zend2
neokiev пишет:
Silex
neokiev пишет:
Laravel

Я смотрю, ты еще и сам не определился.

Я бы выбрал Symfony2 так как давно работаю с ним.
neokiev Отправлено: 01 Октября, 2015 - 10:23:28 • Тема: Помогите выбрать фреймворк • Форум: CMS и фреймворки

Ответов: 15
Просмотров: 2854
Я бы выбирал между Symfony2 или Zend2. Почему?
В интернете очень много примеров по работе с Zend/Symfony. Для симфони написано огромное количество Bundl'ов, по сути вам нужно будет написать несколько контроллеров и модель/маппер к базе данных, и установить недостающие модули.
Но, так как проект "легковесный" я бы посмотрел в сторону Silex - потому что, с ним можно очень быстро разработать такой функционал.

Так же Laravel - набрал огромную популярность, можно посмотреть.
neokiev Отправлено: 01 Октября, 2015 - 10:08:32 • Тема: Удалить повторы слов в файле • Форум: Вопросы новичков

Ответов: 14
Просмотров: 725
А что мешает доработать скрипт который я написал выше.
используй var_dump() или xdebug и смотри где и почему слово удалилось.
И еще если вы будете использовать базу то, есть еще один вариант:
1) Можно читать из файла построчно и записывать в базу, и проверять нет ли такой записи в базе, если слово существует то не записывать, главное правильно структуру базы сделать.
neokiev Отправлено: 30 Сентября, 2015 - 22:55:35 • Тема: Удалить повторы слов в файле • Форум: Вопросы новичков

Ответов: 14
Просмотров: 725
dcc0 пишет:

Было ROFL|asda
Стало ROFL asda


не верно вот что было и стало
CODE (htmlphp):
скопировать код в буфер обмена
  1.  
  2. kasd|ROFL|ROFL
  3. ROFL|asda|9999
  4.  
  5.  
  6. kasd|ROFL
  7. asda|9999
  8.  

это разные строки.

Суть даже не в этом, задача до конца не сформулирована. Автор, если есть возможность приведите полный пример файла, и уточните в каких случаях удалять, спасибо.
neokiev Отправлено: 30 Сентября, 2015 - 21:46:34 • Тема: Удалить повторы слов в файле • Форум: Вопросы новичков

Ответов: 14
Просмотров: 725
dcc0 пишет:
Код несколько нарушил порядок в результате.

Ниндзя Не вижу где? Пример можно?) Подмигивание

dcc0 пишет:
neokiev, я почему-то думаю, что решение не совсем верное.

Это одно из решений. Которое можно доработать, я подсказал направление.
neokiev Отправлено: 30 Сентября, 2015 - 17:34:34 • Тема: Удалить повторы слов в файле • Форум: Вопросы новичков

Ответов: 14
Просмотров: 725
хорошо, нужно было описать изначально в задаче, дальше: в какой строке нужно удалять дубликат? если он есть?
(Добавление)
Код работает:
тестовые данные data.txt
CODE (htmlphp):
скопировать код в буфер обмена
  1.  
  2. asdfjasdjf|fasdfasdfas|afsdfasdfs
  3. ggggggg|ffffff|adsasda|
  4. fff|1234|8888|fffff|fff
  5. kasd|ROFL|ROFL
  6. ROFL|asda|9999
  7. OOOOP|kiko|NIKO
  8. NIKO|BOOM|LIQUID
  9.  


результат
newfile.txt
CODE (htmlphp):
скопировать код в буфер обмена
  1. asdfjasdjf|fasdfasdfas|afsdfasdfs
  2. ggggggg|ffffff|adsasda
  3. fff|1234|8888|fffff
  4. kasd|ROFL
  5. asda|9999
  6. OOOOP|kiko|NIKO
  7. BOOM|LIQUID



CODE (htmlphp):
скопировать код в буфер обмена
  1.  
  2. <?php
  3. //читаем данные из файла
  4. $contents = file_get_contents('data.txt');
  5.  
  6. //разбиваем данные по переносу строк
  7. $default = explode("\n", $contents);
  8.  
  9. $newOne = array();
  10. $appearances = array();
  11.  
  12. foreach ($default as $first => $line) {
  13. //разбиваем каждый елемент на слова
  14.    $exploded = explode('|', $line);
  15. //проходим по каждому слову
  16.   foreach($exploded as $currentItem) {
  17. //проверяем что бы елемент был не пустой, и не повторялся
  18.       if ($currentItem !== '' && !in_array($currentItem, $appearances)) {
  19.           //добавляем елемент в массив $appearances который позволяет
  20.           //исключит дубликаты
  21.           $appearances[] = $currentItem;
  22.          
  23.           $newOne[$first] .= $currentItem . '|';
  24.       }
  25.   }
  26. }
  27. //проходим по массиву новому
  28. //и удаляем последний | и добавляем вместо него перенос строки
  29. //тут можно заменить на str_replace/substrreplace
  30. $resulting = array_map(function($element) {
  31.   $removeLast = substr($element, 0, -1);
  32.    return $removeLast . "\n";
  33. }, $newOne);
  34.  
  35. $writeToFile = implode("",$resulting );
  36.  
  37. $file = fopen('newfile.txt', 'w+');
  38. fwrite($file, $writeToFile);
  39. fclose($file);
  40.  
  41.  
  42.  


код можно немного доработать, также посмотреть что бы небыло проблем с кодировкой
neokiev Отправлено: 30 Сентября, 2015 - 16:05:19 • Тема: Удалить повторы слов в файле • Форум: Вопросы новичков

Ответов: 14
Просмотров: 725
Если слов не очень много, то простой способ:
CODE (htmlphp):
скопировать код в буфер обмена
  1.  
  2. //читаем данные из файла
  3. $contents = file_get_contents('data.txt');
  4. //делаем массив - удаляем ненужные переносы строк и прочее
  5. $arrayOfWords = explode('|',  preg_replace('/\s+/', '',($contents)));
  6. //вуаля массив без дубликатов
  7. var_dump(array_unique($arrayOfWords));
  8. //дальше если нужно
  9. $result = implode('|', array_unique($arrayOfWords));
  10.  


Также если нужно учитывать верхний и нижний регистр слов - то смотрим в сторону strtolower

Страниц (1): [1]
Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB