PHP根据配置设置可变变量

                                                                         PHP根据配置设置可变变量

1、打印

Array
(
    [date] => 2020-03-17 16:50:03
    [reason_1] => 999
    [reason_2] => 0
    [reason_3] => 888
)

2、代码

//PHP根据配置设置可变变量
public function variableTest(){
    //动态获取该配置
    $configReason = [
        ['name'=>'买家原因', 'value'=>'1'],
        ['name'=>'卖家原因', 'value'=>'2'],
        ['name'=>'其他', 'value'=>'3'],
    ];
    $reasons = array_column($configReason, 'name', 'value');
    $result = $this->variableHandle($reasons);

    echo '<pre>';
    print_r($result);
    echo '</pre>';
    exit();
}


public function variableHandle($reasons){
    //定义原因初始值
    foreach ($reasons as $k => $v){
        $reasonName = 'reason' . $k;
        $$reasonName = 0;
    }

    //每个原因对应的订单数量
    $reasonNumbers = [ 1 => 999, 3 => 888 ];

    //关联:原因,订单数量
    foreach ($reasonNumbers as $k => $v){
        $reasonName = 'reason' . $k;
        $$reasonName = $v;
    }

    //定义返回值
    $result = [
        'date' => date('Y-m-d H:i:s')
    ];

    //动态拼接返回值
    foreach ($reasons as $k => $v){
        $reasonName = 'reason' . $k;
        $result = array_merge($result, ['reason_' . $k => $$reasonName]);
    }

    return $result;
}
发布了223 篇原创文章 · 获赞 36 · 访问量 15万+

猜你喜欢

转载自blog.csdn.net/qq_36025814/article/details/104925514
今日推荐