Здравствуйте! Мы хотим установить на сайт счётчик слогов: программу, которая считает количество слогов в строках. Может быть, есть какие-то готовые модули? Совершенно точно эту программу можно скачать себе на компьютер из интернета, их там очень много. А как её прикрутить на сайт? Подскажите, пожалуйста.
И куда вы хотите вставить? В каких частях речи вы хотите считать слоги предлог "на" - это слог? а предлог "в" ? Или только там где есть гласные? --- Добавлено, 9 июл 2016 --- Я пошел во двор (5) Положил на траву топор (8) Уехал в Тверь (4) Теперь я зверь (4)
chukcha, во всех частях речи. Везде, где есть гласные. Соответстенно, предлог "на" - это слог, т.к. в нём есть одна гласная, а предлог "в" - это не слог, т.к. гласной в нём нет. В сущности, название "счётчик слогов" можно смело переименовать в "счётчик гласных". "И куда вы хотите вставить?" - хотим добавить пункт с названием "счётчик слогов" в меню. При нажатии на этот пункт должна открываться страница, где и будет находиться сам счётчик. Вот как должна примерно выглядеть эта страница:
Мы нашли скрипт, который считает количество гласных в строке. Вот этот скрипт: Код: function Calculate( text, res, result ) { var strings = text.split( "\n" ); var i = 0; while ( i < strings.length ) { var line = strings[ i ++ ]; var s = line.replace( / \s / g, '' ).toLowerCase( ); if ( s.length == 0 ) { result.AddNewRecord( ); continue; } var letters = 0; for ( var j = 0; j < res.str.length; ++ j ) { var ch = res.str.charAt( j ); for ( var k = 0; k < s.length; ++ k ) { if ( s.charAt( k ) == ch ) { ++ letters; } } } var row = result.AddNewRecord( ); row.str = line; row.num = letters; } } Подскажите, пожалуйста, подойдёт ли он для Joomla? Можно ли его как-то использовать для создания модуля счётчика слогов (гласных)? Можем ли мы этот скрипт использовать в php-файле модуля?
это не php скрипт, а js нет класса result со своими методами Нет списка гласных Я думаю, что вам проще вместить js скрипт на страницу, чем писать отдельный модуль на php Но можно и отдельный модуль, основанный обработке ajax
chukcha, спасибо. Мы решили делать модуль, который будет считать количество гласных букв в задаваемом русскоязычном тексте. Вот функция, с помощью которой будет производиться подсчёт гласных: Код: function slog_count($string = '') { $result = 0; $glas = 'ауыеоэюияё'; $interenc = mb_internal_encoding(); $gls_enc = mb_convert_encoding($glas, $interenc); $str_enc = mb_convert_encoding($string, $interenc); $lower = mb_strtolower($str_enc, $interenc); $str_len = mb_strlen($lower); $glas_len = mb_strlen($gls_enc); for ($i = 0; $i < $str_len; ++$i) { $orig = mb_substr($lower, $i, 1, $interenc); for ($j = 0; $j < $glas_len; $j++) { $gls = mb_substr($gls_enc, $j, 1, $interenc); if ($orig == $gls) { ++$result; } } } return $result; } Посмотрите, пожалуйста, она подойдёт?