$attr_str_arr = $pm->attr_str_arr; $base_price = $pm->product_info['price']; foreach ($attr_str_arr as $key => $val) { //匹配属性标题 $preg_dt = "/<dt.*?>([\\s\\S]+?)</i"; preg_match($preg_dt, $val, $arr); $attr_name_tmp = ""; $attr_val_tmp_arr = array(); if (!empty($arr)) { $attr_name_tmp = str_replace(":", "", trim($arr[1])); } //forexample: size,color $opt_name_arr = array('attr_name' => $attr_name_tmp, 'attr_type' => 0); $product_attr->language = 3; //echo '<pre>';print_r($opt_name_arr);exit; $msg .= $product_attr->addProductsOptions($opt_name_arr); //匹配属性值 //forexample: red,blue,purse //<span class="color sku-color-173" title="Blue"></span> $preg_li = '/id="sku\\-\\d+\\-(\\d+).+?<span.*?title="([^"]+)"/i'; preg_match_all($preg_li, $val, $arr); //echo '====88======<pre>';print_r($arr);exit; if (!empty($arr[1])) { $attr_val_id_tmp_arr = $arr[1]; $attr_val_tmp_arr = $arr[2]; } else { //<span>3T</span> $preg_li = '/id="sku\\-\\d+\\-(\\d+).+?<span>([^<]+)</i'; preg_match_all($preg_li, $val, $arr); if (!empty($arr)) { $attr_val_id_tmp_arr = $arr[1];
<?php $product_attr = new ZencartProductAttrModel(); //把属性名添加到数据库表 $attr_name = $_POST['attr_name'] ? trim($_POST['attr_name']) : ''; $attr_type = $_POST['attr_type'] ? trim($_POST['attr_type']) : '0'; $arr = array('attr_name' => $attr_name, 'attr_type' => $attr_type); if (empty($language_id)) { $language_id = $_POST['language_id'] ? trim($_POST['language_id']) : '3'; } $product_attr->language = $language_id; $msg .= $product_attr->addProductsOptions($arr); //把属性值添加到数据库表 $attr_values = $_POST['attr_value'] ? $_POST['attr_value'] : array(); $attr_sort = $_POST['attr_sort'] ? $_POST['attr_sort'] : array(); $arr = array('option_val' => $attr_values, 'attr_sort' => $attr_sort); $msg .= $product_attr->addProductsOptionsValues($arr); //把产品和属性关联起来 if (empty($products_id)) { $products_id = $_POST['products_id'] ? trim($_POST['products_id']) : ''; } if (empty($products_id)) { die('产品id为空,不能添加产品属性'); } $attr_price = $_POST['attr_price'] ? $_POST['attr_price'] : array(); $attr_weight = $_POST['attr_weight'] ? $_POST['attr_weight'] : array(); $arr = array('products_id' => $products_id, 'attr_price' => $attr_price, 'attr_weight' => $attr_weight, 'attr_sort' => $attr_sort); $msg .= $product_attr->addProductsAttributes($arr);