Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/5: Рейтинг темы: голосов - 5, средняя оценка - 5.00
28 / 28 / 8
Регистрация: 23.04.2013
Сообщений: 145

Зачем используются ассоциативный и обычный массивы одновременно?

13.08.2014, 02:45. Показов 947. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
обнаружил в самодельном фреймворке вот такой метод. Видно, что он возвращает нам сразу два вида массивов -
ассоциативный и простой. В самом проекте, где используется этот метод нужны только ассоциативные массивы.
Вопрос - не стоит ли озаботиться оптимизацией? Или накладные расходы не столь велики?

PHP
1
2
3
4
5
6
7
8
9
function fetchop($Bdata_set = '')
    {
        if(@$Bdata_set) return mysql_fetch_array($Bdata_set);
/// разный код, но суть не меняется....
/// разный код, но суть не меняется....
/// разный код, но суть не меняется....
/// разный код, но суть не меняется....
        
    }
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
13.08.2014, 02:45
Ответы с готовыми решениями:

Как преобразовать ассоциативный массив в обычный?
Доброго времени суток. Суть такая. Есть ассоциативный массив вида: $arr = Можно ли его как то преобразовать в такой вид: ? ...

Зачем используются do и logouthash
На некоторых сайтах такая строка с параметрами появляется. Для чего она имспользуется и как работает (параметры)?

Как, где и зачем используются функции?
Здравствуйте! Учу C++ , дошел до темы Функции, не могу понять,как их использовать. Знаю, что они нужны для упрощения кода при написании...

6
601 / 468 / 73
Регистрация: 22.01.2009
Сообщений: 1,180
Записей в блоге: 1
13.08.2014, 03:15
Цитата Сообщение от sharpay Посмотреть сообщение
не стоит ли озаботиться оптимизацией?
если основные задачи решены, ставьте xdebug, профайлер и вперед! если там до 100 вызовов этой функции, а производительность при обработке запроса очень низкая, то это не изза этого точно. а если вызовов больше, то все равно не изза этого, а изза того, что слишком много запросов к базе делаете.
ну короче, скорее всего, мало чем влияет, на самом деле

Не по теме:

ну вдруг этот фреймворк был написан, когда луна находилась в водолее? может именно этот код создает такую последовательность опкодов, на которых интерпретатор начинает жутко лагать...

и если вы это именно с точки зрения производительности, а не рефакторинга ради, то лучше не трогайте. мало ли где оно используется, может не заметили? или старый программист, который писал это все, вернется и в непонятках зависнет от такого безобразия, что вы все убрали.
1
28 / 28 / 8
Регистрация: 23.04.2013
Сообщений: 145
13.08.2014, 04:39  [ТС]
Меня это интересует , так сказать.... как образец написания кода. В том смысле, что это НОРМАЛЬНО?
Я бы реализовал две функции для простых массивов и для ассоциативных. Или добавил в эту ф-цию переменную, которая определяла бы формат результата.
Разве это не расточительно? Использовать больше памяти и ресурсов , чем нам реально нужно?
0
601 / 468 / 73
Регистрация: 22.01.2009
Сообщений: 1,180
Записей в блоге: 1
13.08.2014, 14:40
а, вы об этом. ну так-то да, если точно не нужны, то используйте fetch_assoc. особенно если результаты запросов немаленькие, то скорее всего массив, содержащий дупликаты, будет в два раза больше по размеру (если конечно, там не референсы, хотя я в этом сомневаюсь, но это можно выяснить).
хотя, скажу вам по секрету, mysql вообще давно уже deprecated, пользуйтесь mysqli или pdo, если уж на то пошло.
Цитата Сообщение от sharpay Посмотреть сообщение
Я бы реализовал две функции для простых массивов и для ассоциативных.
а я в последнее время перестал делать map-ы всякие (ассоциативные массивы). просто когда выбираю что-то из базы, пишу конкретные поля, в селекте, всегда и всегда знаю по какому индексу что находится. к тому же так организованы большинство драйверов в языке, который я использую последний год (не пхп). Но тут уж как кому и в каком случае удобнее.
Замените на assoc, если хотите, но предупреждаю, что гипер-прибавки производительности после этой замены не ждите. Только и всего.

Не по теме:

а, и еще уберите собачку. вот в данном случае она вообще никакого смысла не имеет, ибо переменная локальная, и она 100% определена, так как формальный параметр. а производительность этого оператора давно уже пытаются повысить (ну прям такой безумно полезный оператор шо пипец). Давно с ней тесты не гонял, но раньше (где-то 5.3.9 версии и меньше, соотвествующие им 5.2 и 5.4) на одно чтение выходили то ли в 7, толи в 70 раз медленнее. но проверьте под вашей версией, если есть время, мне интересно было бы узнать как сейчас с этим дела:)

1
15 / 15 / 8
Регистрация: 29.07.2014
Сообщений: 120
13.08.2014, 17:01
Цитата Сообщение от sharpay Посмотреть сообщение
Разве это не расточительно? Использовать больше памяти и ресурсов , чем нам реально нужно?
Браво. Вам про ZValue еще не рассказывали? Там по int уже оверхед ого-го )
0
15 / 15 / 8
Регистрация: 29.07.2014
Сообщений: 120
13.08.2014, 17:02
Зачем?
По архитектурным соображениям )
0
28 / 28 / 8
Регистрация: 23.04.2013
Сообщений: 145
13.08.2014, 17:57  [ТС]
объясните, что мешало сделать результат дифференцируемым? и в зависимости от потребностей использовать в проекте только то, что нужно а не все в куче? Мне правда, интересно )

Добавлено через 4 минуты
Цитата Сообщение от NEbO Посмотреть сообщение
а я в последнее время перестал делать map-ы всякие (ассоциативные массивы). просто когда выбираю что-то из базы, пишу конкретные поля, в селекте, всегда и всегда знаю по какому индексу что находится
мне кажется массив с "говорящими" ключами удобнее в поддержке.

Цитата Сообщение от NEbO Посмотреть сообщение
а, и еще уберите собачку. вот в данном случае она вообще никакого смысла не имеет, ибо переменная локальная, и она 100% определена, так как формальный параметр. а производительность этого оператора давно уже пытаются повысить (ну прям такой безумно полезный оператор шо пипец).
собачка- то для того чтобы не сыпались сообщения об ошибках. не самая лучшая практика...но их там куча. а моя задача исправить баги и допилить функционал
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
13.08.2014, 17:57
Помогаю со студенческими работами здесь

Зачем используются классы в PascalABC.Net?
Зачем используются классы в PascalABC.Net?

Возвращаемые значения: зачем нужны и где используются?
Здравствуйте! Меня интересует вопрос о возвращаемых значениях в коде. Зачем они нужны и где они используются?

Зачем при реализации стека используются двухсвязные списки?
Зачем при реализации стека используются двухсвязные списки????

Пример из книги: зачем используются одинарные кавычки и в выражении
Добрый вечер! Разбираю пример из книги Кернигана и Ритчи. Зачем в if (c >= '0' && с <= '9' ) используются одинарные кавычки и в выражении...

Делегаты. Где и зачем они используются? Как оптимально их использовать?
Здравствуйте. Помогите с делегатами. Где и зачем они используются? Как оптимально их использовать?


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка. Рецензия / Мнение/ Перевод https:/ / **********/ gallery/ thinkpad-x220-tablet-porn-gzoEAjs . . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru