daily pastebin goal
59%
SHARE
TWEET

task4

dzimmo May 21st, 2018 61 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. <?php
  2. // Пишем текст в переменную $lorem который должен по умолчанию отображаться в textarea:
  3. $lorem = "Lorem ipsum dolor sit amet, consectetur adipisicing elit. Modi natus doloribus debitis,
  4. est officiis possimus alias repudiandae quis temporibus quos voluptates cupiditate quo praesentium
  5. culpa provident id quam, ipsam nesciunt minus saepe sunt assumenda eveniet eum. Minus consectetur
  6. labore obcaecati et dignissimos alias hic natus? Nihil laudantium error velit, quas voluptatem
  7. perspiciatis ratione nesciunt laboriosam veritatis voluptate, nisi officia voluptas maiores
  8. optio voluptatibus laborum nam reiciendis similique natus, culpa totam. Sunt eveniet, cumque
  9. nihil quas esse modi quibusdam necessitatibus unde sint vel, officia deserunt voluptatibus, at?
  10. Aliquid ab, numquam! Eaque autem repellat accusamus amet praesentium eum enim incidunt atque
  11. corporis.";
  12.  
  13. //Создаем функцию которая принимает текст(строку) и формирует вывод на экран таблицы с частотами слов
  14. function resultTable ($textName) {
  15. //создадим массив(список) символов от которых нужно избавиться в тексте
  16. $delSymbols = ["." , "," , "!" , "?" , ";", " \" ", "<", ">" , "(" , ")" , "-", "'", ];
  17. $wordsArray = explode(" ", str_replace($delSymbols,"",trim($textName)));
  18.  
  19. //Затем создаем массив ["слово" => "частота повторения"] функцией  array_count_values()
  20. $freqArray = array_count_values ( $wordsArray );
  21.  
  22. // и отсортируем его в порядке убывания значений (частот) спец функцией arsort();
  23. arsort ($freqArray);
  24.  
  25. //В цикле для каждой пары "ключ" => "значение" создаем html разметку для отображения
  26. $i = 1;
  27. foreach ($freqArray as $key => $value) {
  28.     echo
  29.      "<tr>
  30.      <th scope='row'> $i </th>
  31.      <td>  $key </td>
  32.      <td> $value </td>
  33.    </tr> ";
  34.     $i++;
  35. }
  36. }
  37. //Объявляем переменную которая будет выводить текст в textarea
  38. if(isset($_POST[ExampleOfText])){
  39.             $text = $_POST[ExampleOfText];
  40.             } else {
  41.             $text = $lorem;
  42.             }
  43.  
  44. ?>
  45.     <!DOCTYPE html>
  46.     <html lang="en">
  47.  
  48.     <head>
  49.         <meta charset="UTF-8">
  50.         <meta name="viewport" content="width=device-width, initial-scale=1.0">
  51.         <meta http-equiv="X-UA-Compatible" content="ie=edge">
  52.         <title>Document</title>
  53.         <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.1.1/css/bootstrap.min.css" integrity="sha384-WskhaSGFgHYWDcbwN70/dfYBj47jz9qbsMId/iRN3ewGhXQFZCSftd1LZCfmhktB" crossorigin="anonymous">
  54.     </head>
  55.  
  56.     <body>
  57.         <div class="container">
  58.             <form method="post">
  59.                 <input type="hidden" name="ExampleOfText" value="<?=$_POST[ExampleOfText] ?>" />
  60.                 <textarea style="min-height: 300px; min-width: 220px;" class="mt-3" name="ExampleOfText" value="<?= $_POST[ExampleOfText]; ?>">
  61. <?=$text?>
  62.                 </textarea><br>
  63.  
  64.                 <input type="submit" value="Submit" />
  65.             </form>
  66.             <table class="table table-hover">
  67.                 <thead>
  68.                     <tr>
  69.                         <th>#</th>
  70.                         <th>Слово</th>
  71.                         <th>Частота</th>
  72.                     </tr>
  73.                 </thead>
  74.                 <tbody>
  75.                     <?php resultTable ($_POST[ExampleOfText]); ?>
  76.                 </tbody>
  77.             </table>
  78.         </div>
  79.     </body>
  80.  
  81.     </html>
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
 
Top