Как добавить пробел после каждого символа в строке в php?
у меня есть строка в php с именем $пароль="1bsdf4";
Я хочу, чтобы выход "1 b s d f 4"
Как это возможно. Я пытался выполнить функцию implode, но не смог этого сделать..
$password="1bsdf4";
$formatted = implode(' ',$password);
echo $formatted;
Я пробовал этот код:
$str=array("Hello","User");
$formatted = implode(' ',$str);
echo $formatted;
его работа и добавление пространства в hello и user ! Окончательный вывод я получил Здравствуй Пользователь!--4-->
спасибо, ваши ответы будут оценены.. :)
6 ответов
вы можете использовать implode вам просто нужно сначала использовать str_split, который преобразует строку в массив:
$password="1bsdf4";
$formatted = implode(' ',str_split($password));
http://www.php.net/manual/en/function.str-split.php
извините, не видел ваш комментарий @MarkBaker если вы хотите преобразовать комментарий в ответ, я могу удалить это.
можно использовать chunk_split
для этой цели.
$formatted = trim( chunk_split($password, 1, ' ') );
trim
здесь необходимо удалить пробелы после последнего символа.
вы можете использовать этот код [DEMO]:
<?php
$password="1bsdf4";
echo chunk_split($password, 1, ' ');
chunk_split () является встроенной функцией PHP для разделения строки на более мелкие куски.
Это также сработало..
$password="1bsdf4";
echo $newtext = wordwrap($password, 1, "\n", true);
выход: "1 b s d f 4"
Как насчет этого
$formatted = preg_replace("/(.)/i", "${1} ", $formatted);
согласно:http://bytes.com/topic/php/answers/882781-add-whitespace-between-letters
function break_string($string, $group = 1, $delimeter = ' ', $reverse = true){
$string_length = strlen($string);
$new_string = [];
while($string_length > 0){
if($reverse) {
array_unshift($new_string, substr($string, $group*(-1)));
}else{
array_unshift($new_string, substr($string, $group));
}
$string = substr($string, 0, ($string_length - $group));
$string_length = $string_length - $group;
}
$result = '';
foreach($new_string as $substr){
$result.= $substr.$delimeter;
}
return trim($result, " ");
}
$password="1bsdf4";
$result1 = break_string($password);
echo $result1;
Output: 1 b s d f 4;
$result2 = break_string($password, 2);
echo $result2;
Output: 1b sd f4.