Pau*_*ulS 5 php eval anonymous-function
所以在数据库字段中有一个php函数.这是它的样子:
'$put_fname_fn = function($filename) {
return $filename.'.Z';
};'
Run Code Online (Sandbox Code Playgroud)
我正在执行它:
$code = fetchFromDatabase(); // Get the function string
eval($code);
$put_fname_fn('MYFILE.TXT'); // Convert it to MYFILE.TXT.Z
Run Code Online (Sandbox Code Playgroud)
是否有更优雅的方式来调用用户功能?我尽量避免使用eval,但我没有其他方法来做到这一点.
没有其他方法可以在PHP中评估代码.(您可以将代码编写到文件中include,但这只是隐藏的eval.)
你应该重新考虑你的应用程序设计.从数据库中评估代码是一个非常大的安全风险:如果您的数据库受到攻击(使用简单和常见的SQL注入攻击),您同时会为攻击者提供任意PHP代码执行.
| 归档时间: |
|
| 查看次数: |
274 次 |
| 最近记录: |