PDA

View Full Version : سوال: کار با ارایه



hamid lashani
یک شنبه 22 مهر 1397, 11:22 صبح
با سلام
من چند آرایه دارم که یکی از مقاریشون با هم یکی هست
حالا می خوام که بر اساس الون مفادیر ارایه رو از هم جدا کنم
امیدوارم درست توضیح داده باشم
یکی از نمونه خروجی هام به شکل زیر هست که می خوام تمام groupsid های شماره 1 بشه یک آرایه و groupsid های 2 یک آرایه جدا


array(6) {
[0]=>
array(3) {
["name"]=>
string(8) "سفید"
["groupsid"]=>
string(1) "1"
["variantid"]=>
string(2) "28"
}
[1]=>
array(3) {
["name"]=>
string(1) "s"
["groupsid"]=>
string(1) "2"
["variantid"]=>
string(2) "28"
}
[2]=>
array(3) {
["name"]=>
string(8) "سفید"
["groupsid"]=>
string(1) "1"
["variantid"]=>
string(2) "29"
}
[3]=>
array(3) {
["name"]=>
string(1) "m"
["groupsid"]=>
string(1) "2"
["variantid"]=>
string(2) "29"
}
[4]=>
array(3) {
["name"]=>
string(8) "سفید"
["groupsid"]=>
string(1) "1"
["variantid"]=>
string(2) "30"
}
[5]=>
array(3) {
["name"]=>
string(1) "l"
["groupsid"]=>
string(1) "2"
["variantid"]=>
string(2) "30"
}
}

rahahost
یک شنبه 22 مهر 1397, 12:10 عصر
سلام .
فکر کنم به این صورت میتونید نتیجه بگیرید :







function _group_by($array, $key) { $return = array(); foreach($array as $val) { $return[$val[$key]][] = $val; } return $return;}

hamid lashani
یک شنبه 22 مهر 1397, 12:58 عصر
ممنونم بابت پاسخ
با راهنمایی شما الن خروجی زیر رو دارم
حتالا می خوام از این خروجی استفاده کنم و به تعداد هر آرایه یک لیست کشویی با نام و آی دی مربوتش درست کنم البته بدون مقادیر تکراری




array(2) {
[1]=>
array(3) {
[0]=>
array(3) {
["name"]=>
string(8) "سفید"
["groupsid"]=>
string(1) "1"
["variantid"]=>
string(2) "28"
}
[1]=>
array(3) {
["name"]=>
string(8) "سفید"
["groupsid"]=>
string(1) "1"
["variantid"]=>
string(2) "29"
}
[2]=>
array(3) {
["name"]=>
string(8) "سفید"
["groupsid"]=>
string(1) "1"
["variantid"]=>
string(2) "30"
}
}
[2]=>
array(3) {
[0]=>
array(3) {
["name"]=>
string(1) "s"
["groupsid"]=>
string(1) "2"
["variantid"]=>
string(2) "28"
}
[1]=>
array(3) {
["name"]=>
string(1) "m"
["groupsid"]=>
string(1) "2"
["variantid"]=>
string(2) "29"
}
[2]=>
array(3) {
["name"]=>
string(1) "l"
["groupsid"]=>
string(1) "2"
["variantid"]=>
string(2) "30"
}
}
}