Php में स्ट्रिंग में प्रत्येक वर्ण के बाद कोई स्थान कैसे जोड़ें?

मेरे पास $ पासवर्ड = " 1bsdf4 " नामक PHP में एक स्ट्रिंग है;

I want output "1 b s d f 4"

यह कैसे संभव है। मैं implode समारोह की कोशिश कर रहा था, लेकिन मैं करने में सक्षम नहीं था ..

$password="1bsdf4";    
$formatted = implode(' ',$password);    
echo $formatted;

मैंने इस कोड की कोशिश की:

$str=array("Hello","User");    
$formatted = implode(' ',$str);    
echo $formatted;

Its working and adding space in hello and user ! Final Output I got Hello User

धन्यवाद, आपके उत्तरों की सराहना की जाएगी .. :)

11
$ पासवर्ड = "1bsdf4"; $ स्वरूपित = implode ('', str_split ($ पासवर्ड)); $ स्वरूपित echo;
जोड़ा लेखक Mark Baker, स्रोत

6 उत्तर

आप इंपोड का उपयोग कर सकते हैं आपको केवल str_split का उपयोग करने की आवश्यकता है जो स्ट्रिंग को सरणी में परिवर्तित करता है:

$password="1bsdf4";    
$formatted = implode(' ',str_split($password)); 

http://www.php.net/manual/en/function.str -split.php

क्षमा करें, आपकी टिप्पणी @MarkBaker नहीं देखी गई अगर आप टिप्पणी को एक उत्तर में बदलना चाहते हैं तो मैं इसे हटा सकता हूं।

23
जोड़ा

इस उद्देश्य के लिए आप chunk_split का उपयोग कर सकते हैं।

$formatted = trim( chunk_split($password, 1, ' ') );

trim is necessary here to remove the whitespace after the last character.

4
जोड़ा

आप इस कोड का उपयोग [डेमो] कर सकते हैं:

<?php
 $password="1bsdf4";
 echo chunk_split($password, 1, ' ');

chunk_split() is build-in PHP function for splitting string into smaller chunks.

1
जोड़ा
इस समाधान के लिए एकमात्र मुद्दा यह है कि जेनरेट की गई स्ट्रिंग के अंत में एक अतिरिक्त स्थान जोड़ता है।
जोड़ा लेखक suarsenegger, स्रोत

यह भी काम किया ..

$password="1bsdf4";    
echo $newtext = wordwrap($password, 1, "\n", true);

Output: "1 b s d f 4"

1
जोड़ा

इसके बारे में क्या खयाल है

$formatted = preg_replace("/(.)/i", "\${1} ", $formatted);

according to: http://bytes.com/topic/php/answers/882781-add-whitespace-between-letters

0
जोड़ा
हालांकि यह काम करता है, regexes थोड़ा धीमी हैं, देशी स्ट्रिंग कार्यों के साथ वैकल्पिक तरीके बेहतर हैं
जोड़ा लेखक Martijn, स्रोत
    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.
0
जोड़ा