2016-01-12 25 views
1

我使用ACE來編輯css/html和php文件,html/css的效果很好。 但是,當我嘗試打開一個php文件與ACE進行編輯時,編輯器不顯示任何內容。但是在查看頁面源代碼時,內容會以某種方式轉換爲HTML註釋。有人知道要解決這個問題嗎?Ace編輯器讀取php文件得到評論

代碼:

<div id="editor"><?php readfile($_GET['file']); ?></div> 

「文件」是一個PHP文件,內容不是王牌編輯器中可見,但都變成了HTML註釋,在頁面的源代碼可見。

+0

所以,'ACE'事實不相關..所以問題是(我猜)在服務器。您是否嘗試過使用'file_get_contents'而不是'readfile'? http://stackoverflow.com/questions/20965362/read-a-php-file-using-php –

回答

1

問題是標記不允許在PHP頁面中顯示PHP代碼。我解決了這個問題,特別是that translates到<?ph`p,所以打印代碼不會被PHP引擎處理,並且是可見的。

<div id="editor"><?php echo htmlspecialchars(file_get_contents($_GET['file']));?></div> 

之前寫PHP代碼迴文件,則必須先恢復使用htmlspecialchars_decode的行動,那麼&lt;?php將被轉換回<?php,保持你的代碼安全地連接到該文件。

<?php 
$sourceCodeUpdated = (array_key_exists('editor',$_POST)) ? $_POST['editor'] : ''; 
file_put_contents('file.php',htmlspecialchars_decode($sourceCodeUpdated)); 
?>