![](/img/trans.png)
[英]Is it possible to use a string variable as the entire condition in an if block (without using eval() )?
[英]Using a string variable as the condition of an if statement in php without using eval()
我的條件是通過代碼生成的字符串生成的,如下所示:
$mycondition = "(strpos(strtolower($foo1), strtolower($bar)) !== false) AND (strpos(strtolower($foo1), strtolower($bar2)) !== false) // AND ((strpos(strtolower($foo2), strtolower($bar1)) !== false)) AND..."; ad infinitum
我的if語句應類似於:
if ($mycondition) then...
我可以這樣使用eval()來做到這一點:
if (eval("return $mycondition;")) then...
但我知道不建議使用eval()。 在搜索論壇時,我看到很多人反對使用eval(),但實際上沒有其他選擇。
有什么選擇? 如何將生成的字符串放入if條件中?
一種解決方法是,在生成條件的地方,只有您可以進行比較,並在最后生成布爾值,您可以稍后在代碼中使用。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.