defineheredoc के भीतर आप कैसे उपयोग करते हैं? उदाहरण के लिए:परिभाषित और हेरेडोक
define('PREFIX', '/holiday');
$body = <<<EOD
<img src="PREFIX/images/hello.png" /> // This doesn't work.
EOD;
defineheredoc के भीतर आप कैसे उपयोग करते हैं? उदाहरण के लिए:परिभाषित और हेरेडोक
define('PREFIX', '/holiday');
$body = <<<EOD
<img src="PREFIX/images/hello.png" /> // This doesn't work.
EOD;
the documentation regarding strings
DEFINE('PREFIX','/holiday');
$const = PREFIX;
echo <<<EOD
<img src="{$const}/images/hello.png" />
EOD;
स्थिरांक लिया व्याख्या नहीं कर रहे हैं!
संपादक का नोट: यह सच है। PHP में हेड्रोक ब्लॉक के भीतर वर्णों की किसी भी अन्य स्ट्रिंग से को पहचानने का कोई तरीका नहीं है।
ऐसा लगता है कि उस नियम का अपवाद है: http://stackoverflow.com/a/12508992/367456 – hakre
अगर आप 1 से अधिक स्थिर है, चर उपयोग मुश्किल होगा। इसलिए इस विधि
define('PREFIX', '/holiday');
define('SUFFIX', '/work');
define('BLABLA', '/lorem');
define('ETC', '/ipsum');
$cname = 'constant'; // if you want to use a function in heredoc, you must save function name in variable
$body = <<<EOD
<img src="{$cname('PREFIX')}/images/hello.png" />
<img src="{$cname('SUFFIX')}/images/hello.png" />
<img src="{$cname('BLABLA')}/images/hello.png" />
<img src="{$cname('ETC')}/images/hello.png" />
EOD;
मैंने कोशिश करने के लिए आपके सुझाव का पालन किया क्योंकि मैंने सोचा कि यह दिलचस्प है, हालांकि यह मेरे दिमाग में आया कि आपका सुझाव दिखता है अवांछित, क्योंकि यह कई त्रुटियों देता है। – hakre
मैंने जवाब बदल दिया है। –
यह मेरे लिए अच्छा काम करता है! –
धन्यवाद की कोशिश करो! थोड़ा नोट जोड़ना: '$ const/images/hello.png' भी काम करेगा। इस उदाहरण में – moey
घुंघराले ब्रैकेट की आवश्यकता नहीं है। – wlf
इसके अलावा आप '$ consts = get_defined_constants(); 'सभी परिभाषित करने के लिए और फिर' {$ consts [' PREFIX ']} 'के साथ पहुंच प्राप्त करने के लिए उपयोग कर सकते हैं। – PhoneixS