當前位置: 首頁>>代碼示例>>PHP>>正文


PHP Shipment::importStdClass方法代碼示例

本文整理匯總了PHP中Shipment::importStdClass方法的典型用法代碼示例。如果您正苦於以下問題:PHP Shipment::importStdClass方法的具體用法?PHP Shipment::importStdClass怎麽用?PHP Shipment::importStdClass使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在Shipment的用法示例。


在下文中一共展示了Shipment::importStdClass方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。

示例1: importJson

 /**
  * Import object data from json string.
  * Note: Watch out for single index arrays becoming stdClass objects
  *
  * @param string JSON
  * @param bool
  * @return Cart
  */
 public function importJson($json, $reset = true)
 {
     // strict parameter
     if (!is_string($json)) {
         return false;
     }
     // reset cart
     if ($reset) {
         $this->reset();
     }
     $cart = @(array) json_decode($json, true);
     // just gimme an array
     if (isset($cart['id'])) {
         $this->setId($cart['id']);
     }
     if (isset($cart['customer'])) {
         $customerData = $cart['customer'];
         $customer = new Customer();
         if (is_array($customerData)) {
             $customer->importJson(json_encode($customerData));
             $this->setCustomer($customer);
         }
     }
     if (isset($cart['items']) && count($cart['items']) > 0) {
         $items = $cart['items'];
         foreach ($items as $productKey => $item) {
             $itemJson = json_encode($item);
             $item = new Item();
             $item->importJson($itemJson);
             $this->setItem($item);
         }
     }
     if (isset($cart['shipments']) && count($cart['shipments']) > 0) {
         $shipments = $cart['shipments'];
         foreach ($shipments as $shipmentKey => $shipment) {
             $tmpShipment = new Shipment();
             if ($shipment instanceof stdClass) {
                 $tmpShipment->importStdClass($shipment);
                 $this->setShipment($tmpShipment);
             } else {
                 if (is_array($shipment)) {
                     $tmpShipment->importJson(json_encode($shipment));
                     $this->setShipment($tmpShipment);
                 }
             }
         }
     }
     if (isset($cart['discounts']) && count($cart['discounts']) > 0) {
         $discounts = $cart['discounts'];
         foreach ($discounts as $discountKey => $discount) {
             $tmpDiscount = new Discount();
             if ($discount instanceof stdClass) {
                 $tmpDiscount->importStdClass($discount);
                 $this->setDiscount($tmpDiscount);
             } else {
                 if (is_array($tmpDiscount)) {
                     $tmpDiscount->importJson(json_encode($discount));
                     $this->setDiscount($tmpDiscount);
                 }
             }
         }
     }
     if (isset($cart['include_tax'])) {
         $includeTax = $cart['include_tax'];
         $this->setIncludeTax($includeTax);
     }
     if (isset($cart['tax_rate'])) {
         $taxRate = $cart['tax_rate'];
         $this->setTaxRate($taxRate);
     }
     if (isset($cart['discount_taxable_last'])) {
         $discountTaxableLast = $cart['discount_taxable_last'];
         $this->setDiscountTaxableLast($discountTaxableLast);
     }
     return $this;
 }
開發者ID:luoshulin,項目名稱:falcon,代碼行數:84,代碼來源:Cart.php


注:本文中的Shipment::importStdClass方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。