आप PHP में एक स्ट्रिंग के पहले 100 अक्षर कैसे खींचते हैं


90

मैं मुद्रण के लिए दूसरे चर में डालने के लिए एक स्ट्रिंग चर से पहले 100 वर्णों को खींचने का एक तरीका ढूंढ रहा हूं।

क्या कोई ऐसा कार्य है जो यह आसानी से कर सकता है?

उदाहरण के लिए:

$string1 = "I am looking for a way to pull the first 100 characters from a string variable to put in another variable for printing.";
$string2 = 100charfunction($string1);
print $string2

लेना:

I am looking for a way to pull the first 100 characters from a string vari

बेहतर प्रश्न यह होगा: आप स्ट्रिंग से पहले n अक्षर कैसे खींचेंगे / चुनेंगे?
rahim.nagori

जवाबों:


197
$small = substr($big, 0, 100);

के लिए स्ट्रिंग हेरफेर यहां समारोह का एक बहुत है कि आप अपने भविष्य के काम में मदद कर सकता है के साथ एक पृष्ठ है।


2
अरबी पाठ को वापस करने पर समस्या है, क्योंकि वे संयुक्त अक्षरों के साथ शब्द हैं यदि दूसरा पैरामीटर (100) अरबी शब्दों के अंत में नहीं है, जबकि 100 की गिनती करते हुए यह अशक्त हो जाएगा। उसके लिए हम (mb_substr ($ बड़ा, 0,100)
SAR

38

आप रूट का उपयोग कर सकते हैं, मुझे लगता है:

$string2 = substr($string1, 0, 100);

या मल्टी-बाइट स्ट्रिंग्स के लिए mb_substr:

$string2 = mb_substr($string1, 0, 100);

आप एक फ़ंक्शन बना सकते हैं जो इस फ़ंक्शन का उपयोग करता है और उदाहरण के '...'लिए कहता है कि यह छोटा किया गया था। (मुझे लगता है कि यह पोस्ट होने पर पहले से ही सौ समान उत्तर हैं ...)


22

एक देर से लेकिन उपयोगी जवाब, PHP में इस उद्देश्य के लिए विशेष रूप से एक फ़ंक्शन है।

mb_strimwidth

$string = mb_strimwidth($string, 0, 100);
$string = mb_strimwidth($string, 0, 97, '...'); //optional characters for end

2
अच्छा 1 ... वास्तव में उपयोगी। +1
RJParikh

21
$ x = '1234567';

प्रतिध्वनि पदार्थ ($ x, 0, 3); // आउटपुट 123

इको रूट ($ x, 1, 1); // आउटपुट 2

प्रतिध्वनि पदार्थ ($ x, -2); // आउटपुट 67

प्रतिध्वनि पदार्थ ($ x, 1); // आउटपुट 234567

प्रतिध्वनि पदार्थ ($ x, -2, 1); // आउटपुट 6

1
धन्यवाद। यह रूट के चर () फ़ंक्शन को अच्छी तरह से प्रस्तुत करता है!
जोशफिन्नी

मेरे पास 128.82एक तार है और मैं अलग करना चाहता हूं 100और28.82
Moeez

18

इस फ़ंक्शन का प्रयास करें

function summary($str, $limit=100, $strip = false) {
    $str = ($strip == true)?strip_tags($str):$str;
    if (strlen ($str) > $limit) {
        $str = substr ($str, 0, $limit - 3);
        return (substr ($str, 0, strrpos ($str, ' ')).'...');
    }
    return trim($str);
}

2

PHP आंतरिक कार्यों के बिना:

function charFunction($myStr, $limit=100) {    
    $result = "";
    for ($i=0; $i<$limit; $i++) {
        $result .= $myStr[$i];
    }
    return $result;    
}

$string1 = "I am looking for a way to pull the first 100 characters from a string variable to put in another variable for printing.";

echo charFunction($string1);
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.