2013-03-14 3 views
54

हैलो मैं पाश उपयोग कर रहा हूँ मेरी डेटाबेस से मूल्यों को प्राप्त करने के लिए और मेरे परिणाम की तरह है:php का उपयोग कर स्ट्रिंग से अंतिम अल्पविराम को कैसे निकालें?

'name', 'name2', 'name3', 

और मैं इसे इस तरह हैं:

'name', 'name2', 'name3' 

मैं पाश का अंतिम मान के बाद अल्पविराम निकालना चाहते हैं ।

धन्यवाद

+2

के अपने पाश –

+8

देख आप 'अल्पविराम के साथ अपने मूल मूल्यों implode' चाहिए, नहीं पाश उन पर और अंत में सामान हटा दें। – moonwave99

उत्तर

115

उपयोग rtrim समारोह

rtrim($my_string,','); 

दूसरा पैरामीटर इंगित करता है चरित्र हटाए जाने के लिए।

+1

लूप के अंदर कोड लाइन को लूप के अंदर न रखें – Ander2

+11

यह भी सुनिश्चित करें कि आपके पास अल्पविराम के बाद कोई पीछे की जगह नहीं है, अन्यथा यह असफल हो जाएगा, या आरआरटीआईएम (ट्रिम करें ($ my_string), ',')। – Foxhoundn

+0

उत्कृष्ट जवाब! – DiChrist

18

प्रयास करें:

$string = "'name', 'name2', 'name3',"; 
$string = rtrim($string,','); 
+1

मैंने पहले ही यह कोशिश की है लेकिन यह इस तरह दिख रहा है: 'name''name2''name3' यह मुझे नहीं है कि मुझे – JoJo

+0

की आवश्यकता है, उदाहरण के लिए, आपको केवल अंतिम परिणाम पर ही इस फ़ंक्शन को लागू करने की आवश्यकता है, न कि प्रत्येक मान पर अलग से। – Boaz

+0

इसे स्पष्ट करने के लिए उत्तर अपडेट किया गया। – Boaz

4

उपयोग rtrim()

rtrim($string,','); 
5

rtrim समारोह

rtrim($my_string,','); 

दूसरा पैरामीटर इंगित करता है कि अल्पविराम दाईं ओर से हटाए जाने के लिए।

7

कोड के नीचे का प्रयास करें:

$my_string = "'name', 'name2', 'name3',"; 
echo substr(trim($my_string), 0, -1); 

उपयोग इस कोड को स्ट्रिंग के अंतिम वर्ण हटाने के लिए।

4

आप इसे हटाने के लिए substr फ़ंक्शन का उपयोग कर सकते हैं।

$t_string = "'test1', 'test2', 'test3',"; 
echo substr($t_string, 0, -1); 
2

यदि आप बहु-बाइट टेक्स्ट से काम करते हैं तो यह आपकी स्क्रिप्ट को प्रभावित करेगा। यदि यह मामला है, मैं higly अपने php.ini में mb_ * कार्यों को सक्षम करने की सलाह देते हैं या अंतरिक्ष rtrim के बिना इस ini_set("mbstring.func_overload", 2);

$string = "'test1', 'test2', 'test3',"; 
 
echo mb_substr($string, 0, -1);

0

पहला प्रयास करते हैं ($ arraynama, ""); और त्रुटि परिणाम प्राप्त करें।

तो मैं एक अंतरिक्ष जोड़ने के लिए और अच्छा परिणाम मिलता है:

$newarraynama=rtrim($arraynama,", "); 
0

इसकी के रूप में सरल रूप में:

$commaseparated_string = name,name2,name3,; 
$result = rtrim($commaseparated_string,','); 
संबंधित मुद्दे