簡體   English   中英

不使用eval生成動態測驗問題

[英]Generating dynamic quiz questions without using eval

我想創建一個測驗,在那里我可以從一組 80 道隨機問題中抽取 20 道隨機問題。然而,我希望這些問題能夠包含一些腳本元素,例如隨機數、生成的圖像和代碼片段。

顯而易見的答案是將此代碼放入數據庫並使用 eval

$query_from_db  = '<div>
<?php

//php to run
function dosomething() {
     //bleh
}

?>
</div>
';

php echo eval($query_from_db);

但是我知道這是錯誤的,我不想這樣做,請不要告訴我不要使用 eval。 我需要的是能夠理解如何從不同的方式來解決這個問題。 我應該將我的代碼放在不同的包含中並調用它,我應該使用模板引擎,我應該將它放在單獨的 PHP 文件中並調用它們嗎?

因此,問題可以由隨機數的動態代碼、隨機圖形、隨機文本組成,為每個接受它的人動態生成。

我的建議是不要使用eval方法,而是為每個問題添加一些參數,這些參數可以在發送到瀏覽器之前替換掉。

您可能需要查看sprintf函數,以便以格式化的方式替換字符串。

參數的格式(我將其添加到不同的字段中)取決於您希望通過測驗和其中的問題實現的目標。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM