Покинул форум
Сообщений всего: 209
Дата рег-ции: Май 2014
Помог: 0 раз(а)
Для чего нужен данный атрибут? Вернее когда его рационально использовать?
Ведь создание объекта это затраты ресурсов, почему не оставлять режим массива(например PDO::FETCH_ASSOC) ?
Или это делается тупо ради ООП стилистики? Разве не глупо ради красивой визуализации кода, жертвовать производительностью?
Fart
Отправлено: 14 Сентября, 2016 - 14:32:26
Посетитель
Покинул форум
Сообщений всего: 324
Дата рег-ции: Июль 2016
Помог: 10 раз(а)
это не для стилистики сделали. написать простенький код с запросом - мускул, а для крупного проекта, где важно упростить задачу - пдо.
несмотря на это, если использовать мускул в крупном проекте хочешь не хочешь, а пишешь велосипеды для упрощения работы с субд и если будет большое количество запросов, то мускул проиграет пдо.
пдо также хорош с разными субд.
Ch_chov
Отправлено: 14 Сентября, 2016 - 14:39:20
Постоянный участник
Покинул форум
Сообщений всего: 2121
Дата рег-ции: Июль 2008 Откуда: из города
Помог: 90 раз(а)
> Разве не глупо ради красивой визуализации кода, жертвовать производительностью?
А что там такого страшного с производительностью происходит? Вы делали бенчмарки?
arimanecro
Отправлено: 14 Сентября, 2016 - 15:10:26
Частый гость
Покинул форум
Сообщений всего: 209
Дата рег-ции: Май 2014
Помог: 0 раз(а)
Ch_chov пишет:
А что там такого страшного с производительностью происходит? Вы делали бенчмарки?
PDO::FETCH_ASSOC - 936 ms
PDO::FETCH_BOTH - 948 ms
PDO::FETCH_NUM - 1,184 ms PDO::FETCH_OBJ - 1,272 ms
PDO::FETCH_LAZY - 1,276 ms
For large data sets, these results are typical:
PDO::FETCH_LAZY - 5,490 ms
PDO::FETCH_NUM - 8,818 ms
PDO::FETCH_ASSOC- 10,220 ms
PDO::FETCH_BOTH - 11,359 ms PDO::FETCH_OBJ - 14,027 ms
==============
плюс повсеместно твердят, что объект это ресурсожрущая сущность, если бы это не было так, то нах тогда придумывать синглтон?
OrmaJever
Отправлено: 14 Сентября, 2016 - 15:26:31
Активный участник
Покинул форум
Сообщений всего: 7540
Дата рег-ции: Янв. 2010 Откуда: Чернигов
Помог: 299 раз(а)
Я использую у себя в проекте только PDO::FETCH_OBJ, абсолютно для всех запрсоов. Мне так больше нравится.
По поводу производительности скажу так - забейте. Это несоизмеримые понятия. Запрос в бд к примеру выполняется 5мс, выборка в массив будет 0.01мс к примеру, а в обьект 0.05мс, и что мы выиграем?
Вообще по собственному опыту скажу что про время выполнения пхп можно забыть, в реальных проектах процентов 80-90 времени занимают запросы в бд, иногда даже пинги.
Толку боротся за 1-2мс когда пинг к серверу 40мс и запросы в общем выполняются еще 10-20.
Короче сейчас тема производительности php отходит на второй план.
arimanecro пишет:
то нах тогда придумывать синглтон?
То есть ты думаешь что синглтон нужен только потому что обьекты ресурсоёмкие? В общем долго обьяснять и придумывать примеры, но твоё утверждение не верно.
----- Если вы хотя бы 3-4 раза не решите всё выкинуть и начать заново - вы явно что-то делаете не так.
Все гости форума могут просматривать этот раздел. Только зарегистрированные пользователи могут создавать новые темы в этом разделе. Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.