当前位置: 首页>>代码示例>>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;未经允许,请勿转载。