![]() |
|
Модераторы: skyboy, MoLeX, Aliance, ksnk |
![]()
|
|
| WolfAlone |
|
|||
![]() В экстазе ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1010 Регистрация: 16.9.2008 Где: Рай Репутация: 1 Всего: 5 |
Доброго времени суток!
Подскажите пожалуйста, как работают кириллические ключи в массивах? Пример:
//var_dump выводит всё замечательно (используется кодировка символов UTF-8), но меня терзают смутные сомнения по поводу "не глюкнет ли это когда-нибудь?" -------------------- И сказал Бог: "Тогда я построю свой мир с блэк-джеком и шлюхами!" Ф топку Ubuntu, Debian наше фсё! (с) Евгений Вольф |
|||
|
||||
| gta4kv |
|
|||
![]() Walking around mad. ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1868 Регистрация: 25.7.2006 Репутация: 21 Всего: 91 |
А зачем, если не секрет?
|
|||
|
||||
| WolfAlone |
|
||||
![]() В экстазе ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1010 Регистрация: 16.9.2008 Где: Рай Репутация: 1 Всего: 5 |
Предполагал этот вопрос! Хотел сразу ответить, но потом решил всё-такие его дождаться...
Отвечаю. В БД есть каталог товаров. Каталог товаров представлен в формате:
Задача состоит в том, что бы сгруппировать устройства с одинаковой моделью (в данном случае "Модель 1"). При этом, в зависимости от какого-то одного параметра одной и той же модели устройства - может меняться цена этого устройства. Работает это так:
Это сообщение отредактировал(а) WolfAlone - 16.2.2011, 17:12 -------------------- И сказал Бог: "Тогда я построю свой мир с блэк-джеком и шлюхами!" Ф топку Ubuntu, Debian наше фсё! (с) Евгений Вольф |
||||
|
|||||
| gta4kv |
|
|||
![]() Walking around mad. ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1868 Регистрация: 25.7.2006 Репутация: 21 Всего: 91 |
В каком-каком формате?
|
|||
|
||||
| WolfAlone |
|
|||
![]() В экстазе ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1010 Регистрация: 16.9.2008 Где: Рай Репутация: 1 Всего: 5 |
в итоге мы получаем массив ключом которого является модель устройства, в который вложены другие массивы, содержащие в себе устройства аналогичное модели с параметром цвет=цена.
Это сообщение отредактировал(а) WolfAlone - 16.2.2011, 17:17 -------------------- И сказал Бог: "Тогда я построю свой мир с блэк-джеком и шлюхами!" Ф топку Ubuntu, Debian наше фсё! (с) Евгений Вольф |
|||
|
||||
| Evghenusi |
|
|||
![]() майский жук ![]() ![]() Профиль Группа: Участник Сообщений: 506 Регистрация: 3.8.2006 Где: Молдова, Кишинёв Репутация: 6 Всего: 15 |
а сразу всё нужное найти через БД никак?
что-то вы усложняете задачку Это сообщение отредактировал(а) Evghenusi - 16.2.2011, 17:35 |
|||
|
||||
| WolfAlone |
|
|||
![]() В экстазе ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1010 Регистрация: 16.9.2008 Где: Рай Репутация: 1 Всего: 5 |
Evghenusi, задачу я как раз наоборот упростил (себе). Если дёргать из БД каждую конкретную модель... если таких моделей будет 100? То 100 лишних запросов в БД (пусть даже маленьких), как-то не кошерно.
В коде выше, в переменной $XYZ содержится вся таблица, отсортированная в нужном порядке, к которой в разноброс напиханы модели товаров и их соотношения цвет=цена. Группировать перед выводом их нужно по значению поля "Модель". При этом выводится пользователю должна только 1-а модель товара, а не вся цветовая гамма одной модели. Соотношение цвет=цена есть ни что иное, как "опция" для каждой конкретной модели. -------------------- И сказал Бог: "Тогда я построю свой мир с блэк-джеком и шлюхами!" Ф топку Ubuntu, Debian наше фсё! (с) Евгений Вольф |
|||
|
||||
| patap |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 893 Регистрация: 7.5.2005 Где: Украина, Зп Репутация: 26 Всего: 40 |
зачем мудрить... одним запросом достал нужные телефоны, отсортированные по модели. Потом на основе этих данных сформировал нужный массив и все. Стандартная операция, не нужно никаких русских ключей, 100 запросов и т.д.
-------------------- На боку кобура болталась, сзади шашка отцовская звякала. Впереди меня все хохотало, а позади все плакало (с) |
|||
|
||||
| Dima 2015 |
|
||||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 287 Регистрация: 16.3.2008 Где: SPb Репутация: 2 Всего: 2 |
Рискну ответить на вопрос топик-стартера, а то тут чего только не сказали и не спросили почему да зачем, но по теме ноль ответов
Нормально работают. Они кстати даже в джаваскрипте хорошо работают, сам пробовал, удивился.
Не глюкнет, просто следи аккуратно за кодировкой данных и все. Ну и trim()-ом можно все обкусывать, если какие-то данные приходят от юзера. Еще позволю себе посоветовать посмотреть в сторону sql-ных GROUP BY в совокупности с GROUP_CONCAT, до конца не вникал, но по-моему задачу автора можно решить одним запросом с помощью этих 2х констркуций, и потом одним explode-ом получить нужные данные без перебора. |
||||
|
|||||
| Shogun |
|
|||
|
сёгун-сан ![]() ![]() Профиль Группа: Участник Сообщений: 290 Регистрация: 8.6.2006 Где: Кишинёв Репутация: 9 Всего: 11 |
А что мешает Вам использовать вместо названии модели его ид??
-------------------- 2b || !2b |
|||
|
||||
![]()
|
| Правила форума "PHP" | |
|
|
Новичкам:
Важно:
Внимание:
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | PHP: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |