मैं सिंगल लाइन स्ट्रिंग को एकाधिक लाइन स्ट्रिंग में अलग करने के लिए PHP में एक फ़ंक्शन लिख रहा हूं। मेरा कार्य नीचे दिया गया है'

function addNewlines($content = null, $split_as = 25, $seprater = PHP_EOL) {
    $result = '';
    while ($content != null) {
      $result .= substr($content, 0, $split_as) . $seprater;
      $content = substr($content, $split_as);
    }
    return $result;
}

मैं इस fucntion को किसी अन्य फ़ंक्शन से कॉल कर रहा हूं जो डेटाबेस डेटा को एक्सेल में निर्यात करता था,

 $detail[$value]= $this->addNewlines($detail[$value]);//call function to split

जो डीबी से प्राप्त सभी पंक्तियों के लिए इन कार्यों को कॉल कर सकता है। आप देख सकते हैं कि addNewlines फ़ंक्शन में 250 वर्णों वाली स्ट्रिंग के लिए 10 पुनरावृत्तियों का समय लग सकता है। क्या पुनरावृत्तियों की संख्या को कम करने या इस फ़ंक्शन को अनुकूलित करने का कोई बेहतर तरीका है। मेरा मतलब रेगेक्स या किसी अन्य विधि का उपयोग करना है?

0
RatheeshTS 8 सितंबर 2020, 11:08

1 उत्तर

सबसे बढ़िया उत्तर

लाइन को चंक्स में विभाजित करने के लिए बिल्ड इन फ़ंक्शंस str_split का उपयोग करें और implode परिणामी सरणी को PHP_EOL के साथ गोंद करने के लिए।

$result = implode ( PHP_EOL , str_split( $string , 25 ) );
1
Michel 8 सितंबर 2020, 08:49