X   Сообщение сайта
(Сообщение закроется через 3 секунды)



 

Здравствуйте, гость ( Вход | Регистрация )

Открыть тему
Тема закрыта
> Массив категорий PHP
fahrenheit
fahrenheit
Topic Starter сообщение 23.2.2016, 19:57; Ответить: fahrenheit
Сообщение #1


Участник
***

Группа: User
Сообщений: 117
Регистрация: 29.4.2009
Из: Украина
Поблагодарили: 2 раза
Репутация:   2  


Здравствуйте.
Есть таблица категорий. Эти самые категории используются с проекте в разных целях:
1. Вывод категорий и подкатегорий в качестве меню навигации
2. Вывод дерева категорий списка публикаций или публикации отдельно
3. и много много разных мелких назначений, необходимых для гибкой структуры сайта.

Для удобного использования и данных категорий, создал массив этих самых категорий, который позволяет в нужном месте получить данные категории и подкатегории, имея тот или иной параметр (ID категории, alt_name или ID родителя).
Код
    $sql_result = $db->query('SELECT * FROM w_blog_category ORDER BY position ASC');
    while($categories = $db->get_row($sql_result)){
        $cat_name_array[$categories['alt_name']] = $categories;
        $cat_parent_array[$categories['parentid']] = $categories;
        $cats_array[$categories['id']] = $categories;
    }
    $db->free();


Все это прекрасно работает, но ведь каждый раз обращаться в БД для построения такого рода массива - большая нагрузка на БД. Соответственно, массив можно сохранять в кэше и вызывать данные из файла, вместо БД.
Но из-за недостатка практических знаний в данной отрасли, возник вопрос: как будет работать эта схема и как она отразиться на производительности проекта, если категорий будет очень много? Одно дело, если категорий штук 100. А если их более тысячи? Например, реализация структуры областей/городов/поселков таким образом...

Сильно ли повлияет на производительность системы, если использовать такие массивы? Заранее благодарю за ответы.


--------------------
Всё о Need For Speed
1
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Alexandr_js
Alexandr_js
сообщение 24.2.2016, 2:04; Ответить: Alexandr_js
Сообщение #2


Участник
***

Группа: User
Сообщений: 237
Регистрация: 21.7.2015
Поблагодарили: 43 раза
Репутация:   8  


fahrenheit, судя по всему это dle??
Если да то там есть решение на апи для кеша.

Код
$dle_api->load_from_cache( "имя в ковычках", 100);
100 -время жизни кеша в секундах

$dle_api->save_to_cache ( "имя в ковычках", $array);
$array - массив данных который нужно сохранить


Сообщение отредактировал Alexandr_js - 24.2.2016, 2:06


--------------------
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
ArtNar
ArtNar
сообщение 24.2.2016, 2:56; Ответить: ArtNar
Сообщение #3


Участник
***

Группа: User
Сообщений: 170
Регистрация: 16.11.2015
Поблагодарили: 28 раз
Репутация:   3  


file_put_contents($file_name, serialize($array));

unserialize(file_get_contents($file_name));


--------------------
Я монетизирую сайты тут, выплаты по запросу (хоть каждый день).
Гарантия индексации ваших сайтов.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
x64
x64
сообщение 24.2.2016, 11:20; Ответить: x64
Сообщение #4


F.A.L.L.O.U.T.
*******

Группа: Super Moderator
Сообщений: 3435
Регистрация: 30.6.2011
Из: Железнодорожный (Балашиха)
Поблагодарили: 2750 раз
Репутация:   289  


Это как раз не нагрузка. Нагрузка будет при дополнительных запросах в цикле.


--------------------
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Открыть тему
Тема закрыта
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


Свернуть

> Похожие темы

  Тема Ответов Автор Просмотров Последний ответ
Открытая тема (нет новых ответов) Нужны услуги php-разработчика, бартером за дизайн
вы мне скрипт, я вам дизайн
0 Caterpillar 254 17.12.2017, 23:15
автор: Caterpillar
Открытая тема (нет новых ответов) Недорогие услуги - php/js/mysql/jquery/bootstrap
2 vlads 671 13.12.2017, 21:01
автор: vlads
Открытая тема (нет новых ответов) Веб-разработка (HTML5, CSS3, JavaScript, jQuery, Ajax, PHP)
18 qpPeW 3513 12.12.2017, 13:32
автор: qpPeW
Открытая тема (нет новых ответов) php скрипты любой сложности / диз+верстка (адаптивно)
любые задачи на php - автоматизация, парсинг, работа с БД
1 affrodita 518 8.12.2017, 17:40
автор: affrodita
Открытая тема (нет новых ответов) Тема имеет прикрепленные файлыImage Optimizer (PHP)
6 bars96 936 17.11.2017, 0:47
автор: bars96


 



RSS Текстовая версия Сейчас: 19.12.2017, 1:06
Дизайн