2010-01-13 30 views
0

我的XML文件是這樣的:使用率在XML文件中的變量

<?xml versiion="1.0" encoding "utf-8"?> 

<graph caption='chart' xAxisName='songs' yAxisName='votes' showNames='0' decimalPrecision='0' formatNumberScale='0'> 
<set name='song name' value='1233' color='AFD8F8' /> 
<set name='song name' value='857' color='F6BD0F' /> 
<set name='song name' value='671' color='8BBA00' /> 
<set name='song name' value='494' color='FF8E46' /> 
<set name='song name' value='761' color='008E8E' /> 
<set name='song name' value='960' color='D64646' /> 
<set name='song name' value='629' color='8E468E' /> 
<set name='song name' value='622' color='588526' /> 
<set name='song name' value='376' color='B3AA00' /> 
<set name='song name' value='494' color='008ED6' /> 
<set name='song name' value='761' color='9D080D' /> 
<set name='song name' value='960' color='A186BE' /> 
</graph> 

我可以使用變量在此文件中的值=「$變量」 ???

幫助!!!

回答

0

當然可以:

<set name='song name' value='<?php echo $variable;?>' color='588526' /> 
+1

不,你不能,如果XML文件不是用PHP解析 - 如果該文件是原始.xml文件,那麼這將明顯失敗如果服務器沒有設置爲通過PHP處理.xml的。 –

+1

他沒有說這是一個.xml文件,是嗎? =/ –

+0

非常感謝大家 - 問題解決了!!! ( - : 埃米爾,你是最優雅和簡單的,謝謝... – Tomer

0

XML是一個文本文件。你可以把你想要的任何文本放入它,但在這種情況下變量沒有意義。

你在用什麼XML文件?

+0

@Oded,顯然他使用XML來動態地創建一個閃存圖形,例如使用這個庫:

1

是的,如果通過PHP處理XML,則可以使用PHP變量。簡而言之,只需將擴展名從.xml更改爲.php,然後使用header('Content-type: text/xml')將內容類型設置爲xml。然後你可以使用的文件,因爲它是一個正常的PHP文件:

<?php header('Content-type: text/xml'); echo '<?'; ?>xml version="1.0" encoding "utf-8"<?php echo '?>'; ?> 

<graph caption='chart' xAxisName='songs' yAxisName='votes' showNames='0' decimalPrecision='0' formatNumberScale='0'> 
<?php foreach($songs as $song): ?> 
    <set name='<?php echo $song['name']; ?>' value='<?php echo $song['value']; ?>' color='<?php echo $song['color']; ?>' /> 
<?php endforeach; ?> 
</graph> 
+1

如果在PHP引擎中啓用了'short_tags',則不會如此。您需要'<?php echo' xml [012]' – chelmertz

+0

@chelmertz,您是對的,我已更新我的答案。 –