Теперь я пытаюсь сортировать MySQL результат многомерный массив по type
линии в SQL
так, что мой код:PHP: Сортировка MySQL результат многомерный массив
function getTableValues($table_name)
{
// $link = connect_db();
$front_end_query = "SELECT * FROM `".$table_name."` WHERE `type` = 'front_end'";
$front_end_query_result = mysql_query($front_end_query);
$cur_row = 0;
/*while ($line = mysql_fetch_assoc($queryresult))
{
$values = $line;
$cur_row++;
}*/
$front_end = mysql_fetch_assoc($front_end_query_result);
$i=0;
while ($line = mysql_fetch_assoc($front_end_query_result)){
#if ($line['type'] === 'front_end'){
# $line[$line['type']][$line['name']] = $line['value'];
# $line[$line['type']][$line['name']]['desc'] = $line['description'];
# $line[$line['type']][$line['name']]['visible_name'] = $line['visible_name'];
# $line[$line['type']][$line['name']]['write_roles'] = $line['write_roles'];
# $line[$line['type']][$line['name']]['read_roles'] = $line['read_roles'];
#}
$values['front_end'][$line['name']] = $line;
$i++;
}
return $values;
}
И мой MySQL таблицы:
id type write_roles read_roles name value description visible_name
1 front_end 0 any title sometitle exampletitle Title
2 front_end 0 any description somedesc example Description
И вот что я хочу получить:
$config[(someType)][(SomeName)] = (value of line)
$config[(someType)][(SomeName)][(SomeOption)] = (value of option)
E.g .: $config['front_end']['title']['description']
, который возвращает exampletitle
Как я могу это сделать?
UPD0: поэтому я попытался echo
мой массив с foreach
, и он вернулся только одну строку из моей БД. Что я делаю неправильно?
Вы только получаете одну строку, потому что вы звоните 'mysql_fetch_assoc ($ front_end_query_result)' до 'в то время как()', который принимает из первого ряда. Удалите это, и вы получите две строки. – Samsquanch
@Samsquanch Я прокомментировал 'while()' перед тестированием –
Если вы закомментируете это, тогда вы получите только один результат. Для этого и нужно время. 'mysql_fetch_assoc' возвращает только один результат. – Samsquanch