विचार करें:
$xml = "l";
$xml = "vv";
echo $xml;
यह प्रतिध्वनि vv होगी । SimpleXML , आदि जैसी चीजों के लिए मैं मल्टी-लाइन स्ट्रिंग्स क्यों और कैसे कर सकता हूं ?
concatenation। यह तब कहा जाता है जब आप एक साथ तार लगाते हैं।
विचार करें:
$xml = "l";
$xml = "vv";
echo $xml;
यह प्रतिध्वनि vv होगी । SimpleXML , आदि जैसी चीजों के लिए मैं मल्टी-लाइन स्ट्रिंग्स क्यों और कैसे कर सकता हूं ?
concatenation। यह तब कहा जाता है जब आप एक साथ तार लगाते हैं।
जवाबों:
कुंआ,
$xml = "l
vv";
काम करता है।
आप निम्नलिखित का भी उपयोग कर सकते हैं:
$xml = "l\nvv";
या
$xml = <<<XML
l
vv
XML;
आप .=ऑपरेटर का उपयोग करके तारों को समतल कर सकते हैं ।
$str = "Hello";
$str .= " World";
echo $str; //Will echo out "Hello World";
PHP में Heredoc और Nowdoc स्ट्रिंग्स हैं, जो PHP में मल्टीलाइन स्ट्रिंग्स को संभालने का सबसे अच्छा तरीका है।
http://php.net/manual/en/language.types.string.php#language.types.string.syntax.heredoc
$str = <<<EOD
Example of string
spanning multiple lines
using heredoc syntax.
$var is replaced automatically.
EOD;
एक नॉवडोक एक हेरेडोक की तरह है, लेकिन यह चर को प्रतिस्थापित नहीं करता है।
$str = <<<'EOD'
Example of string
spanning multiple lines
using nowdoc syntax.
$var is NOT replaced in a nowdoc.
EOD;
खबरदार कि अंत टोकन EODको इंडेंट नहीं होना चाहिए, या PHP इसे स्वीकार नहीं करेगा। इसके अलावा, आपको " EOD" का उपयोग करने की आवश्यकता नहीं है ; यह आप चाहते हैं किसी भी स्ट्रिंग हो सकता है।
यह सुनिश्चित नहीं है कि यह प्रदर्शन-वार कैसे हो सकता है, लेकिन उन जगहों के लिए जहां यह वास्तव में कोई मायने नहीं रखता है, मुझे यह प्रारूप पसंद है क्योंकि मुझे यकीन है कि यह \ r \ n (CRLF) का उपयोग कर रहा है और न कि मेरी PHP फ़ाइल जो भी प्रारूप हो में बचाया।
$text="line1\r\n" .
"line2\r\n" .
"line3\r\n";
यह मुझे इंडेंट भी देता है लेकिन मैं चाहता हूं।
आउटपुट बफ़रिंग का उपयोग करने के लिए एक और उपाय है , आप सब कुछ इकट्ठा कर सकते हैं जो आउटपुट हो रहा है / गूंज रहा है और इसे एक चर में संग्रहीत किया जा सकता है।
<?php
ob_start();
?>line1
line2
line3<?php
$xml = ob_get_clean();
कृपया ध्यान दें कि आउटपुट बफ़रिंग इस सटीक मामले के लिए प्रदर्शन और कोड स्वच्छता के संदर्भ में सबसे अच्छा समाधान नहीं हो सकता है, लेकिन इसे संदर्भ के लिए यहां छोड़ने के लायक है।
शायद कोशिश करें "=।"
$xml="l";
$xml.="vv";
आपको "lvv" देगा;
$xml="l\rn";
$xml.="vv";
echo $xml;
लेकिन आपको वास्तव में http://us3.php.net/simplexml देखना चाहिए
अकेले कोड में अलग-अलग लाइनों पर स्ट्रिंग्स "एल" और "वीवी" लगाने के लिए:
$xml = "l";
$xml .= "vv"
echo $xml;
इस उदाहरण में आप .=स्ट्रिंग को उस स्ट्रिंग चर के पिछले संस्करण के अंत में जोड़ने के लिए कह रहे हैं । याद रखें कि = केवल एक असाइनमेंट ऑपरेटर है इसलिए आपके मूल कोड में आप वैरिएबल को एक नया स्ट्रिंग मान दे रहे हैं।
अकेले में प्रतिध्वनि में अलग लाइनों पर "l" और "vv" के तार लगाने के लिए:
$xml = "l\nvv"
echo $xml;
इस उदाहरण में आपको कई स्ट्रिंग्स की आवश्यकता नहीं है, क्योंकि नई लाइन कैरेक्टर आपके \nलिए इसका ध्यान रखेगी।
कोड में अलग-अलग लाइनों पर "एल" और "वीवी" तार लगाने के लिए और जब गूँज रही हो:
$xml = "l";
$xml .= "\nvv"
echo $xml;