[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: random разбивка текста на части
dozer008
Доброе время уважаемые ГурУ!

такая проблемка... перепробовал все функции и что то не нашел такого решения..

есть вот такое


$letters_array = preg_split('//u', $line, -1, PREG_SPLIT_NO_EMPTY);


но мне нужно разбить текст прочитанный из файла на случайные словообразования( не назвать их совсем слогами )
к примеру text: PHP форум su лучший
и массив выглядел
PH
P фо
рум
su лу
чший
и было возможным регулировать кол-во символов в одном элементе массива...
не пинайте сильНо! все мы учимся чему либо!)!)

заранее Благодар!Ю
Игорь_Vasinsky
Цитата
и было возможным регулировать кол-во символов в одном элементе массива...


как это?

можно к примеру создать массив с настройками вида

//по дефолту рандом
$size_default = rand(2,4);
//0 и отстутствие - по дефолту, т.е. для 3,4,5,6,8 - конкретная длина
$sizes = array(0,0,2,3,2,4,0,5);


и текст из файла резать в массиве, и пошагово брать настройки из массива

_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
kaww
Для начала свои попытки бы показал, а так вот
        $str = 'PHP форум su лучший';
$start = 0;
$strlen = mb_strlen($str, 'UTF-8');
$length = rand(2, 5);
$result = [];
while ($start < $strlen) {
$result[] = mb_substr($str, $start, $length, 'UTF-8');
$start += $length;
$length = rand(2, 5);
}
var_dump($result);

dozer008
круто! то что хотел..


    $result[] = mb_substr($str, $start, $length, 'UTF-8');
$start += $length;

вот тут правильное решение не мог придумать а все просто $start += $length;
БлагодарЮ!
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.