PHP 7.2 弃用 create_function():仔细看看
在 PHP 7.2 中,通过 create_function( 动态创建函数) 函数已被弃用。这给在应用程序中依赖此功能的开发人员带来了挑战。为了解决这个问题,让我们探索一个提供现代且兼容的替代方案的解决方案。
考虑以下代码片段:
$callbacks[$delimiter] = create_function( '$matches', "return '$delimiter' . strtolower($matches[1]);" );
这里,create_function()动态创建基于提供的字符串的函数。然而,在 PHP 7.2 及更高版本中,不再推荐这种方法。
替代方案:匿名函数(闭包)
要重写代码以兼容 PHP 7.2,您可以使用匿名函数,也称为闭包。闭包是可以在代码中定义和使用的匿名函数。它们允许您从父作用域访问变量,使它们非常适合手头的任务。
以下代码演示了如何使用闭包重写原始代码片段:
$callbacks[$delimiter] = function($matches) use ($delimiter) { return $delimiter . strtolower($matches[1]); };
In this Closure:
通过使用匿名函数,您可以将代码无缝过渡到 PHP 7.2 及更高版本,同时保留由create_function(),同时遵守最新的 PHP 标准。
以上是如何在 PHP 7.2 及更高版本中替换 PHP 已弃用的 `create_function()`?的详细内容。更多信息请关注PHP中文网其他相关文章!