2009-09-23 9 views
5

में मैं PHP का उपयोग कर अपने php.ini templatizing हूँ। मेरे पास एक सीएलआई PHP स्क्रिप्ट का उपयोग करके टेम्पलेट्स से httpd.conf, apachectl, और php.ini उत्पन्न करके एक विकास वातावरण स्थापित करने के लिए एक स्क्रिप्ट है। दुर्भाग्य से php.ini (एक टिप्पणी में) में शाब्दिक <? और <?php तार हैं। क्या किसी भी तरह से उनसे बचना संभव है ताकि php उन्हें सामान्य PHP एस्केप दृश्यों के रूप में नहीं समझ सके?एक शाब्दिक <? Php और <से बच रहे हैं? एक PHP स्क्रिप्ट

; This directive determines whether or not PHP will recognize code between 
; <?php echo "<? and ?>" ?> tags as PHP source which should be processed as such. It's been 
; recommended for several years that you not use the short tag "short cut" and 
; instead to use the full <?php echo "<?php and ?>" ?> tag combination. With the wide spread use 
; 

उत्तर

9

यह:

<?php echo "<?php"; ?> 

विल उत्पादन:

<?php 

वर्तमान में मेरे वैकल्पिक हल, एक असली पीएचपी एस्केप अनुक्रम है कि उन्हें एक स्ट्रिंग के रूप आउटपुट में उन्हें रैप करने के लिए इस तरह है

+0

वर्क्स के बारे में बहुत कुछ नहीं पता। वास्तव में ' rinogo

+1

नहीं। ऐसा करने का कोई तरीका नहीं है। – gahooa

0

एक त्वरित & सरल समाधान php.ini के माध्यम से खोजना होगा और फ़ाइल को पार्स किए जाने के बाद अनन्य मार्करों के साथ टिप्पणियों के भीतर सभी को प्रतिस्थापित करें, बस उन अद्वितीय मार्करों को संबंधित PHP टैग के साथ प्रतिस्थापित करें।

1

रूप

<?php 
echo <<< EOF 
<?php echo "stuff inside php tag"; ?> 
EOF; 
?> 

इस प्रकार आप पूरी आरं अंदर हियरडॉक लपेट सकता है कौन सा उत्पादन पेज में प्रदर्शित नहीं होता है जब लेकिन पेज स्रोत पर दिखाई देता है
या आप टैग के लिए एचटीएमएल एन्कोडिंग का उपयोग कर सकते

&lt;?php echo 'this'; ?&gt; 

मुझे लगता है कि बाद में आपको बेहतर लगेगा।
यदि यह नौकरी नहीं करता है तो आप ASCII एन्कोडिंग का उपयोग कर सकते हैं जो मुझे

+2

"ईओएफ प्रकार की चीज़ जो मुझे नहीं पता" -> "हेरेडोक" – Charles

+0

एचटीएमएल एन्कोडिंग केवल तभी काम करेगी जब आउटपुट एचटीएमएल था। यह नहीं है- यह एक php.ini फ़ाइल है – nohat

+0

हां मैंने ऐसा सोचा। – andho

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