Форум программистов, компьютерный форум, киберфорум
PHP: Фреймворки
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.51/41: Рейтинг темы: голосов - 41, средняя оценка - 4.51
5 / 5 / 0
Регистрация: 31.07.2012
Сообщений: 24

Разработка фреймворка для работы с базой данных

31.07.2012, 10:15. Показов 8635. Ответов 36
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Привет всем. Я начинающий php программист и не мне не понятны все остальные фрейворки для работы с бд. Поэтому появилась необходимость разработки своего собственного. Да знаю, что я изобретаю велосипед, но все же для меня это хорошая практика по ОПП. Я написан класс для быстрого построения sql запроса. Пытаюсь писать мануал, чтобы другие могли использовать да и самому не забыть.Хотелось бы от вас помощи по лаконичности моего проекта.Какие нибудь советы, можно даже готовые решения. Все кому интересно можно скачать файл и протестировать и посмотреть . Мануал закину позже.
Вложения
Тип файла: rar new.rar (100.7 Кб, 31 просмотров)
1
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
31.07.2012, 10:15
Ответы с готовыми решениями:

Разработка внешней компоненты для взаимодействия с базой данных MySQL
Добрый день. Задача: Разработка внешней компоненты для взаимодействия с базой данных MySQL. Использоваться внешняя компонента должна в...

Класс для работы с базой данных
Здравствуйте, Нашел сайт с классом для работы с базой данных: <?php class DataBase { private static $db = null; //...

Хостинг для работы с базой данных
Здравствуйте. Встала такая задача: необходимо создать небольшой сайт, на котором зарегистрированные пользователи будут лишь заполнять...

36
web dev
 Аватар для TBIKC
107 / 93 / 9
Регистрация: 23.09.2010
Сообщений: 737
10.08.2012, 15:57
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от l2cri Посмотреть сообщение
Чтобы не путаться в запросах
По моему легче запутаться в этом, чем в чистом sql запросе
Цитата Сообщение от l2cri Посмотреть сообщение
PHP
1
$db_query->select_query('id,value','base.table','value LIKE Ivanov%','id,asc','0,3');

Цитата Сообщение от l2cri Посмотреть сообщение
возможно будет такое что все данные будут в массивах и тогда mysqli не прикрутишь никак
Чой то вдруг? Спокойно всё можно сделать
0
5 / 5 / 0
Регистрация: 31.07.2012
Сообщений: 24
10.08.2012, 16:05  [ТС]
да , точно . все он может ) ну ладно . хотя я еще в чисто учебных целях сделать кешированный запрос и если был уже такой запрос , то не нужно его еще раз делать, а результат просто взять из кеша .

Добавлено через 45 секунд
И можно ли mysqli расширить если не понимаешь его принцип ?
0
web dev
 Аватар для TBIKC
107 / 93 / 9
Регистрация: 23.09.2010
Сообщений: 737
10.08.2012, 16:07
Цитата Сообщение от l2cri Посмотреть сообщение
И можно ли mysqli расширить если не понимаешь его принцип ?
Определённо нет - раз
Зачем? - два

Он очень богат и предоставляет больше возможности
Посмотрите в сторону pdo - три
0
5 / 5 / 0
Регистрация: 31.07.2012
Сообщений: 24
10.08.2012, 16:10  [ТС]
Цитата Сообщение от TBIKC Посмотреть сообщение
Определённо нет - раз
Зачем? - два

Он очень богат и предоставляет больше возможности
Посмотрите в сторону pdo - три
Хорошо, кеширование есть ?
0
web dev
 Аватар для TBIKC
107 / 93 / 9
Регистрация: 23.09.2010
Сообщений: 737
10.08.2012, 16:14
Caching queries
http://php.net/manual/en/mysql... aching.php

MySQLi раскладываем все по полочкам
http://habrahabr.ru/post/141127/

memcached
http://memcached.org/
0
 Аватар для basili4
201 / 199 / 4
Регистрация: 13.06.2012
Сообщений: 1,009
Записей в блоге: 3
10.08.2012, 16:45
Цитата Сообщение от l2cri Посмотреть сообщение
программист и не мне не понятны все остальные фрейворки для работы с бд. Поэтому появилась необходимость разработки своего собственного.
Дальше не читал ИМХО бредни неосилирятора.
0
 Аватар для Василий Макогон
270 / 226 / 11
Регистрация: 20.04.2012
Сообщений: 817
10.08.2012, 18:17
обертка безусловно нужна, это написано в статье на хабре, что я привел выше
моя обертка над mysql расширением такова:

PHP
1
$this->db->query('UPDATE `table` SET `order` = ?i WHERE `id` = ?i', $object->getId(), $object->getId());
метки ?i говорят о том, что значения $object->getId(), $object->getId() ожидваются в виде целых чисел и нужно если что почистить и от других символов.
метка ?s - строка и будет произведено mysqL_real_escape_string
и т.д.

вот в этом смысл обертки - упростить написание чистых SQL запросов

билдер запросов - это уже обертка над оберткой над базой. и совершенно отдельная тема.

Добавлено через 3 минуты
вот код
обертка - http://krugozor.svn.sourceforg... xt%2Fplain
результат запроса - http://krugozor.svn.sourceforg... xt%2Fplain
примеры - http://krugozor.svn.sourceforg... xt%2Fplain
0
5 / 5 / 0
Регистрация: 31.07.2012
Сообщений: 24
14.08.2012, 10:58  [ТС]
http://dev.1c-bitrix.ru/api_he... etlist.php
А как вам это ??? Никто же битрикс не ругает за это ? Я почему пришел к массивам ?? Я увидел как они организуют свой фреймворк и захотелось сделать что то подобное. А как вы знаете инфоблоки в битриксе это те же базы данных .
Code
1
2
3
4
5
6
7
8
CIBlockResult
CIBlockElement::GetList(
 array arOrder = Array("SORT"=>"ASC"),
 array arFilter = Array(),
 mixed arGroupBy = false,
 mixed arNavStartParams = false,
 array arSelectFields = Array()
);
Битрикс же не стал использовать чужую библиотеку mysqli . Видимо есть в этом смысл и есть смысл этого сложного велосипеда )Моя главная задача , с помощью фреймворка суметь абстрагироваться от баз данных и прямых запросов .
0
web dev
 Аватар для TBIKC
107 / 93 / 9
Регистрация: 23.09.2010
Сообщений: 737
14.08.2012, 11:14
Цитата Сообщение от l2cri Посмотреть сообщение
А как вам это ??? Никто же битрикс не ругает за это ?
А вы думаете им кто то пользуется ?Кроме самих разработчиков битрикса, или проектов которые сидят на нём, но не хватает финансов перейти на новую платформу
0
5 / 5 / 0
Регистрация: 31.07.2012
Сообщений: 24
14.08.2012, 11:15  [ТС]
Цитата Сообщение от TBIKC Посмотреть сообщение
А вы думаете им кто то пользуется ?Кроме самих разработчиков битрикса, или проектов которые сидят на нём, но не хватает финансов перейти на новую платформу
А разве есть альтернатива ? И думаете мало кто им пользуется 7
0
web dev
 Аватар для TBIKC
107 / 93 / 9
Регистрация: 23.09.2010
Сообщений: 737
14.08.2012, 11:18
Альтернатива чему ?

Знаю
0
5 / 5 / 0
Регистрация: 31.07.2012
Сообщений: 24
14.08.2012, 11:19  [ТС]
Битриксу. Приведите примеры
0
web dev
 Аватар для TBIKC
107 / 93 / 9
Регистрация: 23.09.2010
Сообщений: 737
14.08.2012, 11:24
Любая другая cms, как будто их мало, да и уже cms из моды то выходят, легче и гораздо удобнее всё на фреймворках ваять
0
26 / 26 / 1
Регистрация: 30.09.2011
Сообщений: 196
14.08.2012, 12:08
Чтобы не путаться в запросах, а быстро его организовать.
Для этого достаточно выучить SQL. Смысл оберток - упростить рутинную работу с БД. Для этого можно например заюзать паттерн Active Record и ему подобные.
Лично мне с головой хвтает ADODB. Там и AR и плецсхолдеры и возможность написания переносимого между БД кода и автогенерация запросов по структуре таблицы.
0
 Аватар для Василий Макогон
270 / 226 / 11
Регистрация: 20.04.2012
Сообщений: 817
14.08.2012, 15:53
Цитата Сообщение от l2cri Посмотреть сообщение
Никто же битрикс не ругает за это ?
аха, ржу))

Битрикс - это всего лишь торговая марка. Раскрученный бренд. Кто с ним работал, говорят это Ад и погибель.
1
5 / 5 / 0
Регистрация: 31.07.2012
Сообщений: 24
18.02.2014, 23:14  [ТС]
Спасибо, ребята ) постебались надо мной хорошо. Некоторые защищали, некоторые на правильный путь наставит хотели . На тот момент я был на начале, я сидел на работае и мне нечего было делать,Мне некуда было деть свои знания. Мне никто не подсказывал ...В последствии я многое узнал . Спустя год-полтора сижи и ржу над собой тем самым , что была идея когда то ) конечно ж это все маразм.Да я понимаю что я может и ошибся проффесией но до сих про я работаю с Битриксом. Использую его теперь ни как коробку-переделку, а как фреймворк, тоесть разрабатываю компоненты. С БД работаю на уровне инфоблоков. GetIBlockElementList мое все .Читаю документацию http://dev.1c-bitrix.ru/api_help/ пишу.Не используючужих решений.Для структурирования некой модульности использую классы. Но все же я понял в одиночку всегда трудно чему то научиться и понять , всегда нужен наставник, умный товарищ. Спасибо я посмеялся над самим собой ...

Добавлено через 8 минут
Но дих пор я не умею правильно проектировать сложную структуру, классы, я что то слышал о пространстве имен в классах.Но никак нету времени их выучить и задачи ...И примера яркого. Я до сих пор не строил сложных запросов к базе. Только через фреймворк. Некогда ранее пробовал Join конструкции, но опять таки материала для закрепления нету.. На данный момент у меня много волокиты по поводу написания сайта , ТЗ, смета. Ничего выдающегося пока не написал ) зато теперь пропала это странное желание написать фреймворк или CMS/
0
5 / 5 / 0
Регистрация: 31.07.2012
Сообщений: 24
30.01.2020, 12:42  [ТС]
Удалите данную тему, пожалуйста
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
30.01.2020, 12:42
Помогаю со студенческими работами здесь

Приложение для работы с базой данных
У меня есть приложение суть такая есть база данных в ней таблица, в приложении присутствуют фильтры по столбцам "data" и...

Программа для работы с базой данных
Нужно написать программу на Delphi, которая будет работать с базой данных (100 000 записей, формат базы не важен), и должна осуществлять...

Приложение для работы с базой данных
Здравствуйте. Надо было с ноля спроектировать и создать базу данных, затем заполнить данными. Данные заполнял в Маикрософт ЭСКУЭЛЬ...

Класс для работы с базой данных
Подскажите, пожалуйста, гарантирует ли данный класс закрытие connection по завершению работы с ним ? И выскажите свое мнение по поводу...

Приложение для работы с базой данных
Всем доброго времени суток!!! У меня есть приложение для работы с БД SQL Server. Оно будет работать на другой машине, если не...


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

Или воспользуйтесь поиском по форуму:
37
Ответ Создать тему
Новые блоги и статьи
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь постоянного тока с R, L, C, k(ключ), U, E, J. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа, решает её и находит переходные токи и напряжения на элементах схемы. . . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru