开发者社区 问答 正文

PHP 7.2中不推荐使用create_function

我在php 7.2中使用了此语句,但似乎已弃用,我看不出我的错误在哪里

private function sortByFields($field, &$array) { usort($array, create_function('$a, $b', ' $a = $a["' . $field . '"]; $b = $b["' . $field . '"];

        if ($a == $b) return 0;

        return ($a < $b) ? -1 : 1;
    '));

展开
收起
社区秘书 2019-12-09 16:07:23 588 分享 版权
阿里云 AI 助理回答

在PHP 7.2中,如果你遇到某个功能或语句被弃用的情况,首先需要确定具体是哪个功能被弃用。根据你的描述,“private function sortByFields($field,” 这段代码本身并不直接指向一个已知的PHP 7.2弃用特性,因为定义私有函数和传递参数的方式在这个版本中仍然是支持的。

不过,如果这个函数内部使用了一些特定的PHP函数或特性,那可能是这些内部使用的部分被弃用了。例如,如果sortByFields函数内部使用了关于数组排序的旧方法,如asort()ksort()等,并且是以不推荐的方式使用,这可能是个问题点。

如果你是在处理数组排序,并且有关于如何替换弃用内容的疑问,可以考虑以下几点: 1. 确认具体弃用警告:查看具体的错误信息或警告,它会告诉你哪个函数或语法被弃用以及推荐的替代方案。 2. 使用现代排序方法:如果涉及到数组排序,PHP提供了很多内置函数,比如usort()uasort()uksort()等,它们允许你通过提供自定义比较函数来对数组进行排序,这是非常灵活且推荐的做法。 3. 查阅PHP官方文档:对于任何你认为可能已被弃用的功能,查阅PHP官方文档是最直接的方法,它会详细说明每个函数的状态(是否废弃,以及如果废弃了,推荐的替代方案是什么)。

如果你能提供更具体的代码片段或者错误信息,我可以给出更针对性的帮助。

有帮助
无帮助
AI 助理回答生成答案可能存在不准确,仅供参考
0 条回答
写回答
取消 提交回答
问答分类:
PHP
问答标签:
问答地址: