至於原因,我寧願不進去,現在,我有一個字符串,像這樣:PHP讓我從EVAL)變量裏面串
<div>$title</div>
是被存儲在使用
mysql_real_escape_string
數據庫
。
在正常的腳本執行過程中,該字符串被解析並存儲在變量$string
中,然後被髮送到function($string)
。
在此功能,我想:
function test($string){
$title = 'please print';
echo $string;
}
//I want the outcome to be <div>please print</div>
這似乎是最愚蠢的事情,但對我的生活,我不能讓它「解釋」變量。
我也試過,
echo html_entity_decode($string);
echo bin2hex(html_entity_decode($string)); //Just to see what php was actually seeing I thought maybe the $ had a slash on it or something.
我決定張貼在這裏就當我的腦海裏不停地飄過來使用EVAL()
。
這當然只是僞代碼。解決這個問題的最好方法是什麼?
Smarty圍繞PHP樣式var {$ like} {$ these}使用大括號。 – 2011-05-03 13:00:19
只需要注意,如果將單個撇號更改爲雙撇號,則第一個示例將起作用,這也適用於設置字符串變量,因此它不一定在回顯字符串變量時使用。如果你設置了'$ string ='這是$ var';'你會得到正確的回聲,但是使用'$ string =「這是$ var」;'當echo $時你會得到'這是可愛的文本' string'。 – Scoobler 2011-05-03 13:23:58
@Scoobler你是對的。我發佈的片段只是爲了說明問題示例中會發生什麼。 – Frank 2011-05-03 13:34:23