PHP

2011-12-26 4 views
5

में वैरिएबल में स्ट्रिप्सलाश और न्यूलाइन वैरिएबल जैसा कि मैं समझता हूं, स्ट्रिप्सलाश को न्यूलाइन कैरेक्टर से स्लैश नहीं हटाया जाना चाहिए "\ n"। और सभी ठीक काम करता है, स्थिति को छोड़ देता है, जब मेरे पास एक चर में एक न्यूलाइन वर्ण होता है।PHP

$string = '\n\"'; 
echo stripslashes($string); // n" 

लेकिन मुझे अगले आउटपुट में आवश्यकता है: \n"

अग्रिम धन्यवाद।

+0

एकल उद्धरण चिह्न शाब्दिक स्ट्रिंग मतलब के रूप में जहां दोहरे उद्धरण चिह्नों के भीतर सामग्री पार्स हो जाता है (जो है क्या सोचते हैं लिखने के लिए मतलब तुम्हें चाहिए)। – PeeHaa

उत्तर

5

मुझे लगता है कि आप डबल और सरल उद्धरण

$bad = '\n\"'; 
$good = "\n\""; 

मिश्रण कर रहे हैं एकल उद्धरण का उपयोग करना एकल उद्धरण में कोई भी एस्केपमेंट (एपर्ट \ ') नहीं है PHP PHP चर को प्रतिस्थापित नहीं करेगा।

दूसरी ओर दोहरे उद्धरण बच गए अनुक्रम जैसे \n, \t आदि का उपयोग परमिट ...

आप documentation की समीक्षा करने और मतभेदों को देख सकते हैं।

तो तुम

$string = "\n\""; 
echo stripslashes($string); // \n" 
1

एकल उद्धरण के अंदर, \n एक नई लाइन में अनुवाद नहीं करता है। दोहरे उद्धरण चिह्नों का उपयोग करें के बजाय:

$string = "\n\""; 

एक बेहतर समझ के लिए, अपने वर्तमान कोड बराबर है करने के लिए:

$unwanted_string = "\\n\\\""; // Will be printed as: \n\" 
0

मैं दोहरे उद्धरण चिह्नों का उपयोग कर के बजाय आपकी समस्या का समाधान होगा

$string = "\n\""; 
+0

मुझे क्यों दिया गया है :(:(?? –

+1

+1 इसे शून्य पर वापस लाने के लिए। मुझे लगता है कि आपको डाउनवॉट किया गया है, क्योंकि आपका जवाब लगभग मेरे जैसा है, लेकिन 8 मिनट बाद पोस्ट किया गया। –

संबंधित मुद्दे