मैं अपने डेटाबेस से मान प्राप्त करने के लिए एक लूप का उपयोग कर रहा हूं और मेरा परिणाम इस प्रकार है:
'name', 'name2', 'name3',
और मैं इसे इस तरह चाहता हूं:
'name', 'name2', 'name3'
मैं लूप के अंतिम मान के बाद कॉमा को निकालना चाहता हूं।
जवाबों:
rtrimफ़ंक्शन का उपयोग करें :
rtrim($my_string, ',');
दूसरा पैरामीटर हटाए जाने वाले वर्ण को इंगित करता है।
प्रयत्न:
$string = "'name', 'name2', 'name3',";
$string = rtrim($string,',');
rtrimउस चर पर कॉल लागू करें। यदि आपको अभी भी कठिनाई हो रही है, तो अपने प्रश्न को उस कोड से अपडेट करें जो लूप का उत्पादन करता है।
rtrim($string, ','), जब मुझे लिखना चाहिए$string = rtrim($string, ',');
rtrim समारोह
rtrim($my_string,',');
दूसरा पैरामीटर इंगित करता है कि अल्पविराम को दाईं ओर से हटा दिया जाएगा।
उपयोग rtrim()
rtrim($string,',');
यदि आप उस बहु-बाइट पाठ के साथ काम करते हैं जो आप से प्रतिस्थापित करते हैं तो यह आपकी स्क्रिप्ट को प्रभावित करेगा। यदि यह स्थिति है, तो मैं आपके php.ini में mb_ * फ़ंक्शन को सक्षम करने की अनुशंसा करता हूं या यह करता हूंini_set("mbstring.func_overload", 2);
$string = "'test1', 'test2', 'test3',";
echo mb_substr($string, 0, -1);
इसके रूप में सरल है:
$commaseparated_string = name,name2,name3,;
$result = rtrim($commaseparated_string,',');
उस उद्देश्य के लिए निहित का उपयोग करना बेहतर है। Implode आसान और भयानक है:
$array = ['name1', 'name2', 'name3'];
$str = implode(', ', $array);
आउटपुट:
name1, name2, name3
आप अंतिम अल्पविराम (,) को निकालने के लिए निम्नलिखित में से किसी एक तकनीक का उपयोग कर सकते हैं
solution1:
$string = "'name', 'name2', 'name3',"; // this is the full string or text.
$string = chop($string,","); // remove the last character (,) and store the updated value in $string variable.
echo $string; // to print update string.
समाधान 2:
$string = '10,20,30,'; // this is the full string or text.
$string = rtrim($string,',');
echo $string; // to print update string.
समाधान 3:
$string = "'name', 'name2', 'name3',"; // this is the full string or text.
$string = substr($string , 0, -1);
echo $string;
लूप के दौरान लगाने के उपाय:
//1 - Using conditional:
$source = array (1,2,3);
$total = count($source);
$str = null;
for($i=0; $i <= $total; $i++){
if($i < $total) {
$str .= $i.',';
}
else {
$str .= $i;
}
}
echo $str; //0,1,2,3
//2 - Using rtrim:
$source = array (1,2,3);
$total = count($source);
$str = null;
for($i=0; $i <= $total; $i++){
$str .= $i.',';
}
$str = substr($str,0,strlen($str)-1);
echo $str; //0,1,2,3
implodeकॉमा के साथ अपने मूल मूल्यों को रखना चाहिए , न कि उन पर लूप करना चाहिए और अंत में सामान निकालना चाहिए।