Как разделить струну на куски 2, но сделайте последний кусок 3, если бы это было 1 ⇐ Php

Кемеровские программисты php общаются здесь
Anonymous
Как разделить струну на куски 2, но сделайте последний кусок 3, если бы это было 1

Сообщение Anonymous »

У меня есть ряд строк числа различных длин, которые мне нужно разделить на куски 2 символов. Последний кусок должен быть длиной 3 символов, если бы он был 1 символом.

Код: Выделить всё

implode(" ", str_split($string), 2));
Но это возвращает 22 33 44 4 .
Что я могу сделать? Array < /li>
Объедините его со следующим последним элементом, если он имеет длину 1, и отбросьте последний элемент < /li>
, а затем приподретесь < /code> < /li>
< /ul>
Но это кажется чрезвычайно сложным для чего -то, что человек подходит, чем, чем, не так: < /p>


Два символа от < /li>
Если оставшаяся часть строки длиннее трех символов, разделите следующие два символа от < /li>
Повторите, пока строка не станет три символа длиной или более короткой < /li>
< /ul>
это рекурсивная функция, и в PHP, возможно, может выглядеть что -то вроде: < /p>

, это рекурсивное функцию, и в PHP может быть что -то вроде: < /p>

.

Код: Выделить всё

$chunks = array();
while(strlen($string) > 3) {
$chunks[] = substr($string, 0, 2);
$string = substr($string, 2);
}
$chunks[] = $string;
implode(" ", $chunks);
Но это все еще кажется чрезмерно сложным по сравнению с человеком, который бы просто вырезал, не вырезал .
Есть ли более простой, менее круговой способ?

Подробнее здесь: https://stackoverflow.com/questions/795 ... t-would-be

Вернуться в «Php»