当前位置: 首页>>代码示例>>PHP>>正文


PHP Product::getImportExportFormat方法代码示例

本文整理汇总了PHP中common\models\Product::getImportExportFormat方法的典型用法代码示例。如果您正苦于以下问题:PHP Product::getImportExportFormat方法的具体用法?PHP Product::getImportExportFormat怎么用?PHP Product::getImportExportFormat使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在common\models\Product的用法示例。


在下文中一共展示了Product::getImportExportFormat方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: actionExport

 /**
  * batch export product
  * @param integer $id
  * @return mixed
  */
 public function actionExport()
 {
     //if(!Yii::$app->user->can('viewYourAuth')) throw new ForbiddenHttpException(Yii::t('app', 'No Auth'));
     $format = Product::getImportExportFormat();
     $products = Product::find()->orderBy(['id' => SORT_ASC])->all();
     $str = '';
     // 生成csv标题行
     $product = new Product();
     $start = true;
     foreach ($format as $column) {
         if ($start) {
             $str .= '"' . iconv('utf-8', 'gb2312', $product->attributeLabels()[$column]) . '"';
             $start = false;
         } else {
             $str .= ',"' . iconv('utf-8', 'gb2312', $product->attributeLabels()[$column]) . '"';
         }
     }
     $str .= ',' . iconv('utf-8', 'gb2312', Yii::t('app', 'Thumbs')) . ',' . iconv('utf-8', 'gb2312', Yii::t('app', 'Images'));
     $str .= "\n";
     foreach ($products as $row) {
         // 导出 product表中的数据
         $start = true;
         foreach ($format as $column) {
             $value = '';
             if ($column == 'category_id') {
                 if ($row[$column] > 0) {
                     $category = Category::findOne($row[$column]);
                     $value = iconv('utf-8', 'gb2312', $category->name);
                 }
             } elseif ($column == 'brand_id') {
                 if ($row[$column] > 0) {
                     $brand = Brand::findOne($row[$column]);
                     $value = iconv('utf-8', 'gb2312', $brand->name);
                 }
             } else {
                 $value = iconv('utf-8', 'gb2312', $row[$column]);
             }
             if ($start) {
                 $str .= '"' . $value . '"';
                 $start = false;
             } else {
                 $str .= ',"' . str_replace("\"", "\"\"", $value) . '"';
             }
         }
         // 导出product_image表中的数据
         $start = true;
         $strThumb = $strImage = '';
         $productImages = ProductImage::find()->where(['product_id' => $row->id])->all();
         foreach ($productImages as $item) {
             if ($start) {
                 $strThumb .= $item->thumb;
                 $strImage .= $item->image;
                 $start = false;
             } else {
                 $strThumb .= '|' . $item->thumb;
                 $strImage .= '|' . $item->image;
             }
         }
         $str .= ',"' . $strThumb . '","' . $strImage . '"';
         $str .= "\n";
     }
     $filename = date('Ymd') . '.csv';
     header("Content-type:text/csv");
     header("Content-Disposition:attachment;filename=" . $filename);
     header('Cache-Control:must-revalidate,post-check=0,pre-check=0');
     header('Expires:0');
     header('Pragma:public');
     echo $str;
 }
开发者ID:liangdabiao,项目名称:funshop,代码行数:74,代码来源:ProductController.php


注:本文中的common\models\Product::getImportExportFormat方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。