<form action="10.php" method="post"> <label for="text">Введите текст</label> <textarea cols="45" rows="5" id="text" name="text"></textarea> <input type="submit" value="Подсчитать повторения"> </form> <?php /*10. Написать функцию, которая считает количество уникальных слов в тексте. Слова разделяются пробелами. Текст должен вводиться с формы.*/ function myCount($text) { $arr = explode(" ", $text); $count = array_count_values($arr); foreach ($count as $index => $item) { echo "Слово {$index} повторяется {$item} раз(а)" . "<br>"; } } if (isset($_POST['text'])) { myCount($_POST['text']); }
function MyCount($var, $mode) { if (is_null($var)) { return 0; } if (!is_array($var)) { return 1; } $cnt = 0; foreach ($var as $v) { if (is_array($v) and $mode) { $cnt += myCount($v, 1); } $cnt++; } }
<? function myCount(){ $var = 1454; echo $var; } $b = myCount()*2; //виведе число, бо у функц. є конструкція echo echo $b; //виведе нуль, бо в значення функції нічого не передається //Особливості використання конструкції return. $a = NULL; function myCount($var){ if(is_null($var)) $var = 1454; return $var; } $b = myCount($a)*2; echo $b; // Висновки: // 1. Якби ми тут не використовували ні echo, ні return, компілятор // би просто пробігав по нашій функції і нічого не виводив, таке хіба // можна використовувати коли ми хочемо в цій функції переприсвоїти змінні тощо. // 2. При використанні return $var, в нашій функції не виводиться // а лише повертається (присвоєються індексу функції) значення, // яке отримується згідно заданого алгоритму. // 3. Якби ми тут використовували замість return конструкцію echo то // отримане значення не тільки б присвоювалося але і // одразу виводилося, що не завжди потрібно.... ?>
function myCount($arr) { $i = 0; foreach ($arr as $v) { $i++; if (is_array($v)) { $i += myCount($v); } } return $i; }
function countValue(array $arr, $value) { $count = 0; for ($i = 0; $i < myCount($arr); ++$i) { if ($arr[$i] == $value) { ++$count; } } return $count; }
echo "</ul>"; } showMenu($menu); ################### возврат функций ##################### function myCount($arr) { $i = 0; foreach ($arr as $key => $value) { $i++; } return $i; //возвращает значение переменной //любой код за return никогда не будет выполнен, так как после выполнения return выполнение кода обывается } $test = [1, 2, 8, 9, 7, 6, 5, 4, 3]; echo myCount($test); #################################### гипотетическая ситуация #################### function getGoods() { if (connect == true) { // если конект с базой произошел - вернуть массив return $arrGoods; } else { return false; // если нет, то вернуть - false } } echo getGoods(); ##################################### функция, которая возводит число в степень ############### function myPow($numb, $scale) {
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> </head> <body> <form action="10.php" method="post"> <textarea name="text" id="text"></textarea><label for="text">Введите тект для поиска уникальных слов</label> <input type="submit"> </form> </body> </html> <?php function myCount() { if (!empty($_POST['text'])) { $a = explode(" ", $_POST['text']); $a = array_unique($a); $count = count($a); echo "Всего уникальных слов в тексте - " . $count . "штук"; } } myCount(); /*10. Написать функцию, которая считает количество уникальных слов в тексте. Слова разделяются пробелами. Текст должен вводиться с формы.*/