PHP 开关盒计数器

PHP Switch Case Counter

我是 PHP 的新手,我正在 WordPress(使用 ACF)的环境中进行开发。我正在创建一个自定义布局构建器,我让它工作了,但我想让我的代码更简单。现在 14 cases 如果适用,它会加载 __.php 文件。这是一个示例片段:

switch (get_row_layout()) {

    case 'row_1' :
        include ('template_row_1.php');
    break;

    case 'row_2' :
        include ('template_row_2.php');
    break;

    case 'row_3' :
        include ('template_row_3.php');
    break;

}  

请记住,我总共有 14 个案例(目前)。它们被命名为 row_1 --> row_14,模板文件也按顺序命名。

有没有什么方法可以在不使用这么多 switch case 的情况下进行编码?如果我在 ACF 中包含另一个 row 并且我想避免编写另一个 switch case 怎么办?

我在想一个计数器,它计算 builder 内的总数 layouts 并通过它们循环切换案例。这有意义吗?我只是想让我的代码更简单,避免语句的重复。

谢谢!

您可以动态创建要加载的文件的名称。

像这样:

$row = get_row_layout();
include ('template_'.$row.'.php');

很简单

include ('template_' . get_row_layout() . '.php');

你能试试这个吗?

 if ( get_row_layout() ){
       $str = get_row_layout();
       $file_name = 'template_' . $str . '.php';
        include( $file_name  );
    }