首页 > 解决方案 > 如何重构 create_function() 以迁移到 PHP 7.2

问题描述

我在删除站点中的一个 create_function() 以迁移到 PHP 7.2 时遇到了一点问题。我绝不是程序员,但由于它是整个站点中唯一存在问题的行,我想我可能会解决它..但似乎我做不到!就是这行代码:

else {
    $products_per_page = ot_get_option('shop_product_count', 12);
    add_filter( 'loop_shop_per_page', create_function( '$cols', 'return ' . $products_per_page . ';' ), 20 );
}

我试过这个

else {
  $products_per_page = ot_get_option('shop_product_count', 12);
    add_filter( 'loop_shop_per_page', function($cols) {
        return '$products_per_page';}, 20  );
    }

当我的网站正在运行时,我的网站后端编辑器设置的每页产品数量不适用。它每页显示 10 个产品的数量(我不知道为什么是 10 个),而不是后端编辑器中指定的数量。知道为什么吗?

标签: php

解决方案


尝试这个:

function ($cols) use ($products_per_page) {
    return $products_per_page;
}

推荐阅读