假设有个表store
内有字段product
和 texture
, 内容分别类似12|15|18,与61|22|29,第一组数字代表这个商店内的所有产品id,第二组数字代表所有材质的id。
产品和商圈数据库结构如下:(产品与材质都是store的属性,互不相关)
product:
id | product |
---|---|
1 | 手链 |
2 | 戒指 |
3 | 项链 |
texture:
id | texture |
---|---|
1 | 紫檀木 |
2 | 花梨木 |
以什么方式才能达到如下展示并且尽量高效呢?
商家名称:某某某
产品: 手链 戒指 项链
材质: 紫檀木 花梨木
我想了半天,给出了自认为效率比较低的办法:
由于MySQL返回的数组索引是递增的,如
[
0=>[id=>1,product=>'手链'],
1=>[id=>2,product=>'戒指'],
2=>[id=>3,product=>'项链'],
]
我对这个数组进行一个变换,将其变成以id为主键:
$product=> [
1=>'手链',
2=>'戒指',
3=>'项链'
]
然后将store的属性12|15|18 explode开,将每个数字作为key值,显示$product[$key]
但是总觉得这种效率好低,请问程序员朋友们有没有更好的办法?
或者说,有没有什么办法,从MySQL中取数据的时候,可以指定某一个字段作为数据的索引?将其直接以我转换后的形式返回?
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.