2010-11-22 14 views
5

मैं php Doms कार्यक्षमता के साथ कुछ HTML टेम्पलेट्स बनाने के साथ php टैग जोड़ने के लिए कैसे, अब मैं, मेरे टेम्पलेट यानीडोम पार्सर

$input = $this->dom->createElement('input'); 
$input->setAttribute("type", "text"); 
$input->setAttribute("name", $name); 
$input->setAttribute("class", "input"); 
$input->setAttribute("id", $name); 
$input->setAttribute("value", '<?=$foo->bar; ?>'); 

मेरी समस्या है में कुछ php टैग जोड़ने कि डोम चाहते पार्सर पीएचपी लाइन से बचें ..

<input type="text" name="id" class="input" id="id" value="\&lt;?=$content-&gt;id;?&gt;" /> 

ऐसा करने का कोई और तरीका है?

+0

बस एक नोट के रूप में, यह एक सुरक्षा के दृष्टिकोण से एक * बुरा योजना * की तरह लगता है । – syrion

+0

यह एक अच्छा विचार की तरह नहीं लगता है। आप इसके लिए क्या करना चाहते हैं? –

+0

@syrion किस तरह से यह एक सुरक्षा दृष्टिकोण से एक बुरी योजना है? – nfo

उत्तर

3

आप एक Processing Instruction

$php = $dom->createProcessingInstruction('php', 'echo $foo->bar;'); 

पूर्ण उदाहरण की जरूरत है:

$dom = new DOMDocument; 
$dom->loadXml('<html><head><title>Test</title></head><body/></html>'); 
$dom->getElementsByTagName('body')->item(0)->appendChild(
    $dom->createProcessingInstruction('php', 'echo $foo->bar;') 
); 
$dom->format = TRUE; 
echo $dom->saveXML(); 

परिणाम:

<?xml version="1.0"?> 
<html> 
    <head> 
    <title>Test</title> 
    </head> 
    <body> 
    <?php echo $foo->bar;?> 
    </body> 
</html> 
+1

सही, यह वही है जो मैं देख रहा था – nfo

+0

@ एनएफओ आपका स्वागत है। – Gordon

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