У меня есть поле ввода пользователя. Это будет textarea
, Когда пользователь отправляет форму, я хочу проверить, является ли количество введенных символов больше 10. Если больше 10, я хочу разделить ее. Четко говорит, если я получу строку
$someWords = "Pleasedon'tblowmetopiecesandthis will be a 12345 random.";
Затем я хочу разделить эту строку. Каждая часть должна быть длиной не более 10 символов. Требуемый результат (чистый текст) должен выглядеть примерно так:
tblowmetop
iecesandth
is will be
a 12345 r
andom
Как я могу сделать это в PHP? У меня есть идея о получении подсчета с помощью strlen($string);
,
<?php
$str = "Hello Friend";
$arr1 = str_split($str);
$arr2 = str_split($str, 3);
print_r($arr1);
print_r($arr2);
?>
Эта функция считает пробел («») одним символом
Выход
Array
(
[0] => H
[1] => e
[2] => l
[3] => l
[4] => o
[5] =>
[6] => F
[7] => r
[8] => i
[9] => e
[10] => n
[11] => d
)
Array
(
[0] => Hel
[1] => lo
[2] => Fri
[3] => end
)
http://php.net/manual/en/function.str-split.php
Проверьте эту ссылку для получения дополнительной информации
Необходимо убрать использование пространства str_replace функционировать перед str_split заменить пространство в строке
Вы можете использовать встроенную функцию PHPs chunk_split()
:
$chunkedString = chunk_split($someWords, 10);
Это дает вам строку с разрывом строки после каждых 10 символов.
Если вы хотите получить массив с записями по 10 символов каждый, вы можете использовать PHP str_split()
:
$chunks = str_split($someWords, 10);
PHP имеет встроенную функцию под названием str_split()
Это разбивает строку и создает массив.
$arr = str_split($someWords, 10);
Этот код создаст массив строк, каждая длиной 10 символов. Аналогичная функция chunk_split()
может быть использован для вставки дополнительного контента каждые n символов.
$chunked = chunk_split($someWords, 10);
$chunked
это одиночная строка с переводом строки через каждые 10 символов. Эта функция может быть полезна для переноса текста для вывода.
Вы можете попробовать использовать рекурсивно
function submystr_to_array($str, $length, $arr_result = array() )
{
$istr_len = strlen($str);
if ( $istr_len == 0 )
return $arr_result;
$result = substr($str, 0, $length);
$tail = substr($str, $length, $istr_len );
if ( $result )
array_push( $arr_result, $result );
if( !$tail )
return $arr_result;
return submystr_to_array( $tail, $length, $arr_result);
}
$mystr = "Pleasedon'tblowmetopiecesandthis will be a 12345 random.";
var_dump( submystr_to_array($mystr, 10) );
результат:
array(6) {
[0]=>
string(10) "Pleasedon'"[1]=>
string(10) "tblowmetop"[2]=>
string(10) "iecesandth"[3]=>
string(10) "is will be"[4]=>
string(10) " a 12345 r"[5]=>
string(6) "andom."}