先说assert函数:
在php5中 assert是一个函数,可以通过$f="assert"; $f(...); 来动态执行一些代码。
在php7中 assert不再是一个函数,变成了一个语言结构(类似eval)。记得有一篇文章说不能再作为函数名动态执行代码,但是我这里在7.0.12中还是执行成功了。这里还不知道是什么原因。
file_put_contents(); 也可以执行代码,在第二个参数
file_put_contents("1.txt" , ${phpinfo()}); 可以成功执行代码 ,第一个参数也是如此,和第二个参数是一样的。