我刚刚看了一个网店程序的数据库,网店不是都有很多分类吗 每个分类都有不同的属性,跟参数嘛,比如说 颜色,尺寸,等等,很多人说可以建个类别表,然后建个属性表,再建了个属性值表,但是我看这个网店程序的数据库好像不是这样做的,他在数据库存的都是这样的东西:
a:4:{s:8:"use_spec";N;s:9:"use_brand";b:1;s:9:"use_props";b:0;s:10:"use_params";b:0;}我想知道这存的是什么哦?

解决方案 »

  1.   


    关于数据的数据叫 元数据,a:4:{s:8:"use_spec";N;s:9:"use_brand";b:1;s:9:"use_props";b:0;s:10:"use_params";b:0;}
    是数据,这里元数据丢失了.尽管可以猜测, 逆向工程, 但还是不如得到元数据的好.好比 /etc/passwd 中各个字段的含义需要说明.
      

  2.   

    他用的方法不重要, 
    关键是 a:4:{s:8:"use_spec";N;s:9:"use_brand";b:1;s:9:"use_props";b:0;s:10:"use_params";b:0;} 
    中各个字段的数据类型, 类型界定了取值的定义域;
    如何分割, 如果有空值时, 分隔符如何使用;....有了这些信息, 就好办了.
      

  3.   

    a:4:{s:8:"use_spec";N;s:9:"use_brand";b:1;s:9:"use_props";b:0;s:10:"use_params";b:0;} 猜一把:{} 内为各个字段的信息, 字段之间用分号分开,s 表示字符串, : 后面是长度, 长度后面是字符串本身;b 表示布尔类型, 取值有 1, 0, 哪个是 true 未知其中开始的 a:4: 部分, 未知,后面括号里头的 N 表示啥, 未知.