2015-09-05 69 views
1

是否可以将多个值存储在一个密钥中?PHP将多个值存储在密钥中

category, itemname and itemurl 

现在我想按类别,这意味着一些项目具有相同的类别,我希望他们能在一起的所有项目进行排序:通过我的数据库具有以下propertys所有项目

我环路在我的对象应该是这样的:

Items [ 
    category1 => item1[], item2[], item3[] 
    category2 => item4[], item5[] 
    category3 => item6[] 
] 

感谢您的帮助!

解决方案: 您可以将值存储在一个匿名数组

while ($stmt->fetch() ) { 

    $tempArray = [ 
     'xxx' => xxx, 
     'yyy' => yyy, 
     'zzz' => zzz 
    ]; 
    Items[category][ ] = $tempArray; 
} 
+0

兄弟,它不是清除... – aimme

回答

0

我不知道如果我完全理解你,但是如果我与你想达到什么样的正确:

只需使用一个数组来存储他们(你不能有一个一个键许多对象,但你可以有一个关键的一个对象,一个对象可以存储许多其他对象)

Items [ 
    category1 => array(item1[], item2[], item3[]), 
    category2 => array(item4[], item5[]), 
    category3 => array(item6[])), 
] 
1

我可能不理解的问题正确,但每个键存储多个值是在PHP中很容易

$items[0]['category'] = "Category 1" 
$items[0]['itemname'] = "Item Numero Uno" 
$items[0]['itemrul'] = "myfavoriteitem.com" 

$items[1]['category'] = // . . . you get it 

要按类别重新组织,应该是相当容易

$categorized = array(); 

foreach ($items as $item) { 
    $categorized[$item['category']][] = $item; //append item to the category 
} 
+0

感谢我的帮助,我自己找到了,看看我的解决方案:) – user3759502

相关问题