mysql - php excel 导入 导入三级分类 表格应该怎么设计才能得到想要的数据格式?

WBOY
Freigeben: 2016-08-04 09:19:23
Original
1335 Leute haben es durchsucht

mysql - php excel 导入  导入三级分类 表格应该怎么设计才能得到想要的数据格式?

就是多个1级分类 下面有不确定个二级分类 二级分类下面有不确定个三级分类 我想获取到相关的数据组合写入数据库 但是这个格式不知道怎么排才能获取到对的数据
有空的亲们给看看 帮下 谢谢

有没有办法获取整列的值 然后根据长度去区分2列 然后再区分三列

现在获取到的数据格式是按行的 1 2 3 。。。
上图
mysql - php excel 导入  导入三级分类 表格应该怎么设计才能得到想要的数据格式?

上打印的数据

<code>array (size=16)
  0 => 
    array (size=7)
      0 => float 1
      1 => string '销售部' (length=9)
      2 => string '销售1区' (length=10)
      3 => string '销售1科室' (length=13)
      4 => null
      5 => null
      6 => null
  1 => 
    array (size=7)
      0 => float 2
      1 => null
      2 => null
      3 => string '销售2科室' (length=13)
      4 => null
      5 => null
      6 => null
  2 => 
    array (size=7)
      0 => float 3
      1 => null
      2 => null
      3 => string '销售3科室' (length=13)
      4 => null
      5 => null
      6 => null
  3 => 
    array (size=7)
      0 => float 4
      1 => null
      2 => null
      3 => string '销售4科室' (length=13)
      4 => null
      5 => null
      6 => null
  4 => 
    array (size=7)
      0 => float 5
      1 => null
      2 => string '销售2区' (length=10)
      3 => string '销售1科室' (length=13)
      4 => null
      5 => null
      6 => null
  5 => 
    array (size=7)
      0 => float 6
      1 => null
      2 => null
      3 => string '销售2科室' (length=13)
      4 => null
      5 => null
      6 => null
  6 => 
    array (size=7)
      0 => float 7
      1 => null
      2 => null
      3 => string '销售3科室' (length=13)
      4 => null
      5 => null
      6 => null
  7 => 
    array (size=7)
      0 => float 8
      1 => null
      2 => null
      3 => string '销售4科室' (length=13)
      4 => null
      5 => null
      6 => null
  8 => 
    array (size=7)
      0 => float 9
      1 => string '市场部' (length=9)
      2 => string '市场1区' (length=10)
      3 => string '市场1科室' (length=13)
      4 => null
      5 => null
      6 => null
  9 => 
    array (size=7)
      0 => float 10
      1 => null
      2 => null
      3 => string '市场2科室' (length=13)
      4 => null
      5 => null
      6 => null
  10 => 
    array (size=7)
      0 => float 11
      1 => null
      2 => null
      3 => string '市场3科室' (length=13)
      4 => null
      5 => null
      6 => null
  11 => 
    array (size=7)
      0 => float 12
      1 => null
      2 => null
      3 => string '市场4科室' (length=13)
      4 => null
      5 => null
      6 => null
  12 => 
    array (size=7)
      0 => float 13
      1 => null
      2 => string '市场2区' (length=10)
      3 => string '市场1科室' (length=13)
      4 => null
      5 => null
      6 => null
  13 => 
    array (size=7)
      0 => float 14
      1 => null
      2 => null
      3 => string '市场2科室' (length=13)
      4 => null
      5 => null
      6 => null
  14 => 
    array (size=7)
      0 => float 15
      1 => null
      2 => null
      3 => string '市场3科室' (length=13)
      4 => null
      5 => null
      6 => null
  15 => 
    array (size=7)
      0 => float 16
      1 => null
      2 => null
      3 => string '市场4科室' (length=13)
      4 => null
      5 => null
      6 => null</code>
Nach dem Login kopieren
Nach dem Login kopieren

回复内容:

mysql - php excel 导入  导入三级分类 表格应该怎么设计才能得到想要的数据格式?

就是多个1级分类 下面有不确定个二级分类 二级分类下面有不确定个三级分类 我想获取到相关的数据组合写入数据库 但是这个格式不知道怎么排才能获取到对的数据
有空的亲们给看看 帮下 谢谢

有没有办法获取整列的值 然后根据长度去区分2列 然后再区分三列

现在获取到的数据格式是按行的 1 2 3 。。。
上图
mysql - php excel 导入  导入三级分类 表格应该怎么设计才能得到想要的数据格式?

上打印的数据

<code>array (size=16)
  0 => 
    array (size=7)
      0 => float 1
      1 => string '销售部' (length=9)
      2 => string '销售1区' (length=10)
      3 => string '销售1科室' (length=13)
      4 => null
      5 => null
      6 => null
  1 => 
    array (size=7)
      0 => float 2
      1 => null
      2 => null
      3 => string '销售2科室' (length=13)
      4 => null
      5 => null
      6 => null
  2 => 
    array (size=7)
      0 => float 3
      1 => null
      2 => null
      3 => string '销售3科室' (length=13)
      4 => null
      5 => null
      6 => null
  3 => 
    array (size=7)
      0 => float 4
      1 => null
      2 => null
      3 => string '销售4科室' (length=13)
      4 => null
      5 => null
      6 => null
  4 => 
    array (size=7)
      0 => float 5
      1 => null
      2 => string '销售2区' (length=10)
      3 => string '销售1科室' (length=13)
      4 => null
      5 => null
      6 => null
  5 => 
    array (size=7)
      0 => float 6
      1 => null
      2 => null
      3 => string '销售2科室' (length=13)
      4 => null
      5 => null
      6 => null
  6 => 
    array (size=7)
      0 => float 7
      1 => null
      2 => null
      3 => string '销售3科室' (length=13)
      4 => null
      5 => null
      6 => null
  7 => 
    array (size=7)
      0 => float 8
      1 => null
      2 => null
      3 => string '销售4科室' (length=13)
      4 => null
      5 => null
      6 => null
  8 => 
    array (size=7)
      0 => float 9
      1 => string '市场部' (length=9)
      2 => string '市场1区' (length=10)
      3 => string '市场1科室' (length=13)
      4 => null
      5 => null
      6 => null
  9 => 
    array (size=7)
      0 => float 10
      1 => null
      2 => null
      3 => string '市场2科室' (length=13)
      4 => null
      5 => null
      6 => null
  10 => 
    array (size=7)
      0 => float 11
      1 => null
      2 => null
      3 => string '市场3科室' (length=13)
      4 => null
      5 => null
      6 => null
  11 => 
    array (size=7)
      0 => float 12
      1 => null
      2 => null
      3 => string '市场4科室' (length=13)
      4 => null
      5 => null
      6 => null
  12 => 
    array (size=7)
      0 => float 13
      1 => null
      2 => string '市场2区' (length=10)
      3 => string '市场1科室' (length=13)
      4 => null
      5 => null
      6 => null
  13 => 
    array (size=7)
      0 => float 14
      1 => null
      2 => null
      3 => string '市场2科室' (length=13)
      4 => null
      5 => null
      6 => null
  14 => 
    array (size=7)
      0 => float 15
      1 => null
      2 => null
      3 => string '市场3科室' (length=13)
      4 => null
      5 => null
      6 => null
  15 => 
    array (size=7)
      0 => float 16
      1 => null
      2 => null
      3 => string '市场4科室' (length=13)
      4 => null
      5 => null
      6 => null</code>
Nach dem Login kopieren
Nach dem Login kopieren

把 Excel 里面数据读出到一个二维数组里面就不用我教你了吧,下面直接上代码。

<code><?php $lines = [
    ['销售部', '销售1区', '销售1科室'],
    ['', '', '销售2科室'],
    ['', '', '销售3科室'],
    ['', '', '销售4科室'],
    ['', '销售2区', '销售1科室'],
    ['', '', '销售2科室'],
    ['', '', '销售3科室'],
    ['', '', '销售4科室'],
    ['市场部', '市场1区', '市场1科室'],
    ['', '', '市场2科室'],
    ['', '', '市场3科室'],
    ['', '', '市场4科室'],
    ['', '市场2区', '市场1科室'],
    ['', '', '市场2科室'],
    ['', '', '市场3科室'],
    ['', '', '市场4科室'],
];

$formatedData = [];
foreach ($lines as $line) {
    if (!empty($line[0])) {
        $level1 = $line[0];
        $formatedData[$level1] = [];
    }
    if (!empty($line[1])) {
        $level2 = $line[1];
        $formatedData[$level1][$level2] = [];
    }
    if (!empty($line[2])) {
        $level3 = $line[2];
        $formatedData[$level1][$level2][] = $level3;
    }
}

print_r($formatedData);</code></code>
Nach dem Login kopieren

程序运行结果为:

Array
(

<code>[销售部] => Array
    (
        [销售1区] => Array
            (
                [0] => 销售1科室
                [1] => 销售2科室
                [2] => 销售3科室
                [3] => 销售4科室
            )

        [销售2区] => Array
            (
                [0] => 销售1科室
                [1] => 销售2科室
                [2] => 销售3科室
                [3] => 销售4科室
            )

    )

[市场部] => Array
    (
        [市场1区] => Array
            (
                [0] => 市场1科室
                [1] => 市场2科室
                [2] => 市场3科室
                [3] => 市场4科室
            )

        [市场2区] => Array
            (
                [0] => 市场1科室
                [1] => 市场2科室
                [2] => 市场3科室
                [3] => 市场4科室
            )

    )
</code>
Nach dem Login kopieren

)

我的做法从分类那一列开始标记cat1,cat2,cat3,然后后台用个for循环出来

就按照采纳的可以获取到想要格式的数据 很正确 但是如果想对操作的一些数据进行判断 还是比较麻烦的 或者说可能判断不了 比如三级分类 判断他的父级存在不存在是判断不了的 只能判断有就添加子集 没有就添加一个新的 总体感觉这个需求的格式还是有待调整 存在一些问题 我这里可能是内部使用 要求不那么严格 严格要求的还是不能用这种格式

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!