2016-06-27 5 views
1

이 내 ChargifyCoupon.php- PHP을/Laravel

public function create($product_family_id = null, $details = []) { 
     $details = array_replace_recursive([ 
      "name" => "15% off", 
      "code" => "15OFF", 
      "description" => "15% off for life", 
      "percentage" => "15", 
      "allow_negative_balance" => "false", 
      "recurring" => "false", 
      "end_date" => "2016-12-31T23:59:59-04:00", 
      "product_family_id" => $product_family_id 
     ], $details); 
     $returnData = $this->connector->createCoupon($details, 'JSON'); 
     var_dump($returnData); 
     die; 

    } 

이다 내가 '결과를 볼려고 할 때 내 ChargifyConnector.php

function createCoupon($product_family_id, $coupon_details = [], $format = 'XML') { 
     $extension = strtoupper($format) == 'XML' ? '.xml' : '.json'; 
     $base_url = "/product_families/{$product_family_id}/coupons" . $extension; 
     $data = json_encode([ 
      "coupon" => $coupon_details 
     ]); 
     $coupon = $this->sendRequest($base_url, $format, 'POST', $data); 
     if ($coupon->code == 200) { 
      return $coupon->response; 
     } elseif ($coupon->code == 404 || $coupon->code == 500) { 
      var_dump($coupon); 
      die; 
      throw new \Exception($coupon->code, "Coupon was not created."); 
     } 

    } 

입니다 m 숯불에 이렇게 많은 연구 후 답장이 늦어

답변

0

죄송합니다 ..

"배열 문자열 변환에"점점 쿠폰을 받으려면

/product_families/{$ product_family_id}을 (를) 삭제하십시오.

쿠폰 데이터를 product_families/{$ product_family_id} (으)로 보낼 필요가 없습니다.

자세한 내용은 HERE을 참조하십시오.

업데이트 코드 :

function createCoupon($product_family_id, $coupon_details = [], $format = 'XML') { 
    $extension = strtoupper($format) == 'XML' ? '.xml' : '.json'; 
    // $base_url = "/product_families/{$product_family_id}/coupons" . $extension; 
    $base_url = "/coupons" . $extension; 
    $data = json_encode([ 
     "coupon" => $coupon_details 
    ]); 
    $coupon = $this->sendRequest($base_url, $format, 'POST', $data); 
    if ($coupon->code == 200) { 
     return $coupon->response; 
    } elseif ($coupon->code == 404 || $coupon->code == 500) { 
     // var_dump($coupon); 
     // die; 
     throw new \Exception($coupon->code, "Coupon was not created."); 
    }  
}