【问题标题】:How to group Stripe charges by key如何按键分组 Stripe 费用
【发布时间】:2018-03-04 21:44:46
【问题描述】:

我希望创建一个捐赠网站,其中将按团队对金额进行分组。我正在尝试通过 Stripe 获取所有费用,然后将它们分组。 我怎样才能得到每个团队的捐款总额?

function in_array_r($needle, $haystack, $strict = false) {
    foreach ($haystack as $item) {
        if (($strict ? $item === $needle : $item == $needle) || (is_array($item) && in_array_r($needle, $item, $strict))) {
            return true;
        }
    }

    return false;
}


function TheMainFunction(){
    \Stripe\Stripe::setApiKey("KEY");
    $charges = \Stripe\Charge::all();


    $teams = array();
    foreach($charges->data as $charge) if(isset($charge->metadata['team']) ){

        if( !in_array_r($charge->metadata['team'], $teams ) ){
            array_push($teams, array( 'team'=> $charge->metadata['team'], 'amount' => $charge->amount) );
        }
        else{
            foreach( $teams as $k => $v ){
                if( $v['team'] == $charge->metadata['team']){
                    // The action should be done here
                }

            }
        }


    }
}

【问题讨论】:

    标签: php multidimensional-array stripe-payments


    【解决方案1】:

    我找到了!

    function TheMainFunction(){
    \Stripe\Stripe::setApiKey("KEY");
    $charges = \Stripe\Charge::all();
    
    
    $teams = array();
    foreach($charges->data as $charge) if(isset($charge->metadata['team']) ){
    
        if( !in_array_r($charge->metadata['team'], $teams ) ){
            array_push($teams, array( 'team'=> $charge->metadata['team'], 'amount' => $charge->amount) );
        }
        else{
            foreach( $teams as $k => $v ){
                if( $v['team'] == $charge->metadata['team']){
                    $oldvalue = $v['amount'];
                    $newvalue = $oldvalue+$charge->amount;
                    unset($teams[$k]);
                    array_push($teams, array( 'team'=> $charge->metadata['team'], 'amount' => $newvalue) );
                }
    
            }
        }
    
    
    }
    

    }

    【讨论】:

      猜你喜欢
      • 2023-02-03
      • 2021-12-28
      • 2018-02-02
      • 2021-08-24
      • 2017-12-03
      • 1970-01-01
      • 2018-05-18
      • 2017-08-14
      • 2020-05-28
      相关资源
      最近更新 更多