Str_split vs кириллица - Visavi.net
https://visavi.net/
RSS - Visavi.nethttps://visavi.net/assets/img/images/logo_small.pngRSS - Visavi.net
https://visavi.net/
[email protected] (admin)[email protected] (admin)Thu, 16 Jan 2025 03:14:19 +0300Ant0ha +1, всем спасибо за помощь, темка клосед )
https://visavi.net/topics/14255/254948
Str_split vs кириллица KOZZSat, 02 Oct 2010 02:43:20 +0400Сообщенияhttps://visavi.net/topics/14255/254948300 слов
https://visavi.net/topics/14255/254477
Str_split vs кириллица Ant0haFri, 01 Oct 2010 10:14:38 +0400Сообщенияhttps://visavi.net/topics/14255/25447712, сколько там слов на страницу?
https://visavi.net/topics/14255/254463
Str_split vs кириллица KOZZFri, 01 Oct 2010 09:54:20 +0400Сообщенияhttps://visavi.net/topics/14255/254463<img src="https://visavi.net/uploads/stickers/smile.gif" alt="smile"> вот пример вывода по словам: <a href="http://demo.mobilecms.ru/lib/read_book.php?book_id=1" target="_blank" rel="nofollow">http://demo.mobilecms.ru/lib/read_book.php?book_id=1</a>
https://visavi.net/topics/14255/254458
Str_split vs кириллица Ant0haFri, 01 Oct 2010 09:43:00 +0400Сообщенияhttps://visavi.net/topics/14255/25445810, а можно в принципе и поизвращаться, считать количество букв в каждом слове, и выводить слова, пока не достигнет нужного количества букв ) хотя это уже изврат , согласен <img src="https://visavi.net/uploads/stickers/crazy.gif" alt="crazy">
https://visavi.net/topics/14255/254457
Str_split vs кириллица KOZZFri, 01 Oct 2010 09:42:01 +0400Сообщенияhttps://visavi.net/topics/14255/254457угу, по количеству слов<br>
<br>
> слова бывают разной длины<br>
большой роли не сыграет ;-)
https://visavi.net/topics/14255/254456
Str_split vs кириллица Ant0haFri, 01 Oct 2010 09:39:19 +0400Сообщенияhttps://visavi.net/topics/14255/2544568, а если делить по пробелам, то как выводить? по количеству слов? слова бывают разной длины.
https://visavi.net/topics/14255/254454
Str_split vs кириллица KOZZFri, 01 Oct 2010 09:30:54 +0400Сообщенияhttps://visavi.net/topics/14255/254454substr() не гуд:<br>
1. она не дружит с uft8, почти везде в конце страницы будешь видеть квадратики<br>
2. пернос слов не всегда будет корректным, даже если решишь проблему 1 (допустим через mb_substr()), например, на одной странице вконце будет <strong>пр</strong> на другой вначале <strong>ограммирование</strong>
https://visavi.net/topics/14255/254449
Str_split vs кириллица Ant0haFri, 01 Oct 2010 09:22:38 +0400Сообщенияhttps://visavi.net/topics/14255/254449ну с таким же успехом можно делить по буквам и выводить по количеству символов, либо (недавно дошло) делить через substr(), и вручную заносить в массив
https://visavi.net/topics/14255/254432
Str_split vs кириллица KOZZFri, 01 Oct 2010 08:42:46 +0400Сообщенияhttps://visavi.net/topics/14255/254432точно)
https://visavi.net/topics/14255/254426
Str_split vs кириллица Ant0haFri, 01 Oct 2010 08:26:36 +0400Сообщенияhttps://visavi.net/topics/14255/254426#4. Одинаково мыслим :-D <br>
+ Практично и компактно..
https://visavi.net/topics/14255/254425
Str_split vs кириллица НикFri, 01 Oct 2010 08:25:35 +0400Сообщенияhttps://visavi.net/topics/14255/254425гг, опоздал немного я)
https://visavi.net/topics/14255/254424
Str_split vs кириллица Ant0haFri, 01 Oct 2010 08:24:10 +0400Сообщенияhttps://visavi.net/topics/14255/254424дели по словам, а не по символам - делать легче, результат качественней<br>
<br>
$words = explode(' ', $text);<br>
<br>
и тд и тп
https://visavi.net/topics/14255/254423
Str_split vs кириллица Ant0haFri, 01 Oct 2010 08:23:31 +0400Сообщенияhttps://visavi.net/topics/14255/254423Хм.. собственно говоря,а обязательно тебе таким методом необходимо текст разбивать? Не проще ли просто разделить текст по пробелам и выводить? Конечно взгляд со своей колокольни и может немного отходит от поставленной задачи но все же :-D<br>
<pre class="prettyprint">
$text = explode(' ','этот текст надо разделить на страницы');
</pre>
Ну а дальше получаешь массив из слов и выводишь..
https://visavi.net/topics/14255/254422
Str_split vs кириллица НикFri, 01 Oct 2010 08:22:12 +0400Сообщенияhttps://visavi.net/topics/14255/254422сама функция str_split() с кириллицей в utf-8 не дружит, взял функцию из комментариев в php.net, так же тут мне советовали ее же.<br>
Но то ли у меня руки из ануса, то ли функция реально неадекватно себя ведет <br>
насколько я понял, за количество символов, на которые будет разбиваться строка, отвечает переменная $split<br>
допустим, я использую свой же код из 39 поста, в самом начале втыкаю эту функцию, и присваиваю $split значение 10 (для примера).<br>
<pre class="prettyprint"><?
function utf8_str_split($str) {
// place each character of the string into and array
$split=10;
$array = array();
for ( $i=0; $i < strlen( $str ); ){
$value = ord($str[$i]);
if($value > 127){
if($value >= 192 && $value <= 223)
$split=2;
elseif($value >= 224 && $value <= 239)
$split=3;
elseif($value >= 240 && $value <= 247)
$split=4;
}else{
$split=1;
}
$key = NULL;
for ( $j = 0; $j < $split; $j++, $i++ ) {
$key .= $str[$i];
}
array_push( $array, $key );
}
return $array;
}
$text = 'этот текст надо разделить на страницы';
$symb_onpage = 10; # количество символов на страницу
$page = (isset($_GET['page'])) ? abs(intval($_GET['page'])) : 0; # номер страницы, дописывать в адресную строку (если не 0)
$arr = utf8_str_split($text,$symb_onpage);
if(array_key_exists($page,$arr))
{
if(trim($arr[$page]) !== ''){echo trim($arr[$page]);}
} else {echo 'Страницы не существует!';}
# Навигация
if(count($arr) !== 0 && count($arr) !== 1){
echo '<br/>';
if($page != 0){echo '<a href="?page='.($page-1).'">Назад </a>';echo '['.($page+1).']';}
if($page != count($arr)-1){echo '<a href="?page='.($page+1).'"> Вперед</a>';}
}
?></pre>
<br>
а в ответ получаю разделенный по 1 символу массив. (вместо 10, т.е. от моих телодвижений ничего не изменилось)<br>
в чем дело то?
https://visavi.net/topics/14255/254408
Str_split vs кириллица KOZZFri, 01 Oct 2010 07:11:40 +0400Сообщенияhttps://visavi.net/topics/14255/254408