我試圖運行PHP腳本如何在php腳本中執行php腳本?
這裏內PHP腳本代碼:
<?php
echo '<b><?php echo "Hello world";?></b>';
?>
當我在我的編輯器中運行該腳本,它返回一個空白頁。
我的代碼有問題,爲什麼?或者有沒有更好的方式來運行PHP腳本內的PHP腳本?
我試圖運行PHP腳本如何在php腳本中執行php腳本?
這裏內PHP腳本代碼:
<?php
echo '<b><?php echo "Hello world";?></b>';
?>
當我在我的編輯器中運行該腳本,它返回一個空白頁。
我的代碼有問題,爲什麼?或者有沒有更好的方式來運行PHP腳本內的PHP腳本?
可以使用eval()
功能來運行任何PHP代碼可能會作爲一個字符串。如果你的代碼是以html
(不是php代碼)開頭,或者你的代碼本身有一個開始標籤(<?php
),請記得在開頭加上結束標記(?>
)。
<?php
$code = '<b><?php echo "Hello world";?></b>';
$code = '?>' . $code; //Add a closing tag, because your first texts are not php code.
eval($code); //No need echo again here.
?>
免責聲明
執行動態代碼可能來自用戶的輸入有嚴重的安全隱患。它可能對你的服務器做任何事情。因此,請確保您沒有將此選項提供給任何未經授權的人員或過濾代碼,以便只有少數類型的代碼可以由此執行。
感謝eval()的想法,它的工作原理非常完美,歡呼聲 – starkeen
@Starkeen你可以接受答案,如果這解決了你的問題。 –
使用include
爲:
<?php
include("other.php");
?>
other.php
<?php
echo "Hello world";
?>
想知道爲什麼你想這樣做嗎?我不確定要提出什麼樣的解決方案,因爲PHP是同時解釋的,所以字符串中的PHP不會被解釋。 –
如果您告訴我們您正在嘗試做什麼或實現什麼,可能會更好。 – JosephGarrone
請參閱eval函數。 –