我在Mysql表中有一个字段,其中包含php变量,用于确定存储文件的目录(例如Docs/$CompID/
和Acc/$AccID/
)。问题是当我检索值时,显示php变量名而不是值。
我尝试在值周围加上引号 -
两者都在Mysql表中(Docs/$CompID/"
和Docs/".$CompID."/
)
并显示php变量(echo"$dir"
)
我也尝试过str_replace
,将{ }
放在变量周围,以便我可以在字符串中识别它:
$start=strrpos($cat['dir'],'{');
$stop=strrpos($cat['dir'],'}');
$rep=substr($cat['dir'],$start+1,$stop-1);
$dir=str_replace("{".$rep."}",$rep,$cat['dir']);
所有这些只显示了php变量名。任何帮助将不胜感激!
答案 0 :(得分:2)
您可以使用eval()
$AccID = 'me';
eval("\$str = \"Acc/$AccID/\";");
echo $str;
答案 1 :(得分:1)
如果我是正确的,你的变量将如下所示:var
。您可以$var
访问$$cat["dir"]
。但是,如果db变量看起来像$var
,只需使用一个简单的子字符串来删除$
。