PHP . SU
Программирование на PHP, MySQL и другие веб-технологии
Страниц (1): [1]
Найдено сообщений: 4
aleksey7
Отправлено: 06 Июля, 2023 - 15:29:51 • Тема: Как собрать массив из строчных данных • Форум: Напишите за меня, пожалуйста
Ответов: 1 Просмотров: 2291
Здравствуйте помогите пожалуйста понять алгоритм сборки данных в массив. надо собрать дерево категорий из строчных даных, все строки с ':' это данные которые должны быть в соответствующей категории. Пример данных
CODE (
text ):
скопировать код в буфер обмена
db1
catA
cat1a1
prod1:a0
prod2:a0
prod3:a0
cat2a2
prod1:a1
prod2:a1
prod3:a1
catB
cat1b1
prod1:b0
prod2:b0
prod3:b0
cat2b2
prod1:b1
prod2:b1
prod3:b1
db2
catC
cat1c1
prod1:c0
prod2:c0
prod3:c0
cat2c1
prod1:c1
prod2:c1
prod3:c1
catD
cat1d2
prod1:d0
prod2:d0
prod3:d0
cat2d2
prod1:d1
prod2:d1
prod3:d1
на выходе должен получится массив
PHP:
скопировать код в буфер обмена
[
'db1' =>
[
'catA' =>
[
'cat1a1' => [ 'prod1:a0' , 'prod2:a0' , 'prod3:a0' ] ,
'cat2a2' => [ 'prod1:a1' , 'prod2:a1' , 'prod3:a1' ]
] ,
'catB' =>
[
'cat1b1' => [ 'prod1:b0' , 'prod2:b0' , 'prod3:b0' ] ,
'cat2b2' => [ 'prod1:b1' , 'prod2:b1' , 'prod3:b1' ]
]
] ,
'db2' =>
[
'catC' =>
[
'cat1c1' => [ 'prod1:c0' , 'prod2:c0' , 'prod3:c0' ] ,
'cat2c2' => [ 'prod1:c1' , 'prod2:c1' , 'prod3:c1' ]
] ,
'catD' =>
[
'cat1d1' => [ 'prod1:d0' , 'prod2:d0' , 'prod3:d0' ] ,
'cat2d2' => [ 'prod1:d1' , 'prod2:d1' , 'prod3:d1' ]
]
]
] ;
aleksey7
Отправлено: 23 Января, 2018 - 21:27:05 • Тема: помогите отсортировать массив по клюку • Форум: Напишите за меня, пожалуйста
Ответов: 4 Просмотров: 82
я вроде добился нужного результата но хотелось бы знать как это делается более профессионально
PHP:
скопировать код в буфер обмена
'a' => array(
'v' => array ( 'x' => 1 , 'y' => 9 , 'z' => 3 ) , 'f' => array ( 'x' => 1 , 'y' => 9 , 'z' => 3 ) ) ,
'b' => array(
'v' => array ( 'x' => 1 , 'y' => 12 , 'z' => 3 ) , 'f' => array ( 'x' => 1 , 'y' => 12 , 'z' => 3 ) , 't' => array ( 'x' => 1 , 'y' => 12 , 'z' => 3 ) , ) ,
'c' => array(
'v' => array ( 'x' => 1 , 'y' => 9 , 'z' => 3 ) , 'f' => array ( 'x' => 1 , 'y' => 9 , 'z' => 3 ) , 'o' => array ( 'x' => 1 , 'y' => 9 , 'z' => 3 ) , 'p' => array ( 'x' => 1 , 'y' => 9 , 'z' => 3 ) , ) ,
'd' => array(
'v' => array ( 'x' => 1 , 'y' => 'abc' , 'z' => 3 ) , 'f' => array ( 'x' => 1 , 'y' => 'abc' , 'z' => 3 ) ) ,
'e' => array(
'v' => array ( 'x' => 1 , 'y' => 12 , 'z' => 3 ) , 'f' => array ( 'x' => 1 , 'y' => 12 , 'z' => 3 ) ) ,
'f' => array(
'r' => array ( 'x' => 1 , 'y' => 21 , 'z' => 3 ) ) ,
'g' => array(
'v' => array ( 'x' => 1 , 'y' => 'abc' , 'z' => 3 ) , 'f' => array ( 'x' => 1 , 'y' => 'abc' , 'z' => 3
) ) ,
) ;
foreach ( $x as $k => $v ) {
return $v [ 'y' ] ;
}
}
} , $list ) ;
foreach ( $tmp as $k => $v ) {
$new [ $k ] = $list [ $k ] ;
}
aleksey7
Отправлено: 23 Января, 2018 - 09:07:07 • Тема: помогите отсортировать массив по клюку • Форум: Напишите за меня, пожалуйста
Ответов: 4 Просмотров: 82
объясните пожалуйста как отсортировать массив по клюку 'y'
PHP:
скопировать код в буфер обмена
'a' => array(
'v' => array ( 'x' => 1 , 'y' => 9 , 'z' => 3 ) , 'f' => array ( 'x' => 1 , 'y' => 9 , 'z' => 3 ) ) ,
'b' => array(
'v' => array ( 'x' => 1 , 'y' => 12 , 'z' => 3 ) , 'f' => array ( 'x' => 1 , 'y' => 12 , 'z' => 3 ) , 't' => array ( 'x' => 1 , 'y' => 12 , 'z' => 3 ) , ) ,
'c' => array(
'v' => array ( 'x' => 1 , 'y' => 9 , 'z' => 3 ) , 'f' => array ( 'x' => 1 , 'y' => 9 , 'z' => 3 ) , 'o' => array ( 'x' => 1 , 'y' => 9 , 'z' => 3 ) , 'p' => array ( 'x' => 1 , 'y' => 9 , 'z' => 3 ) , ) ,
'd' => array(
'v' => array ( 'x' => 1 , 'y' => 'abc' , 'z' => 3 ) , 'f' => array ( 'x' => 1 , 'y' => 'abc' , 'z' => 3 ) ) ,
'e' => array(
'v' => array ( 'x' => 1 , 'y' => 12 , 'z' => 3 ) , 'f' => array ( 'x' => 1 , 'y' => 12 , 'z' => 3 ) ) ,
'f' => array(
'r' => array ( 'x' => 1 , 'y' => 21 , 'z' => 3 ) ) ,
'g' => array(
'v' => array ( 'x' => 1 , 'y' => 'abc' , 'z' => 3 ) , 'f' => array ( 'x' => 1 , 'y' => 'abc' , 'z' => 3
) ) ,
) ;
Страниц (1): [1]
Powered by ExBB FM 1.0 RC1. InvisionExBB