[PHP] create_function() 代码注入问题已经被弃用
发布时间:2021-05-21 06:54:46 所属栏目:大数据 来源: https://www.jb51.cc
导读:在某些老的框架或者cms中还在应用这个函数,建议是换成普通的原生匿名函数 官方文档的解释: 此函数在内部执行eval(),因此具有与eval()相同的安全性问题。此外,它还具有不良的性能和内存使用特性。 如果您使用的是PHP 5.3.0或更高版本,则应使用原生匿名
在某些老的框架或者cms中还在应用这个函数,建议是换成普通的原生匿名函数 官方文档的解释: 此函数在内部执行eval(),因此具有与eval()相同的安全性问题。此外,它还具有不良的性能和内存使用特性。 如果您使用的是PHP 5.3.0或更高版本,则应使用原生匿名函数。 例如下面的代码,有见到用create_function做的,换成下面这样 echo preg_replace_callback('~-([a-z])~',function ($match) { return strtoupper($match[1]); },'hello-world'); // 输出 helloWorld ? ? 匿名函数的一些解释和用法: 匿名函数(Anonymous functions),也叫闭包函数(closures),允许 临时创建一个没有指定名称的函数。最经常用作回调函数(callback)参数的值。当然,也有其它应用的情况。 $message = 'hello'; 继承 $message $example = function () use ($messagevar_dump(); }; echo $example(); ? (编辑:北几岛) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |