![]() |
|
Модераторы: skyboy, MoLeX, Aliance, ksnk |
![]()
|
|
| Mark.dll |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 134 Регистрация: 28.2.2003 Где: Эстония, Нарва Репутация: нет Всего: нет |
Может быть когда-нибудь научимся на C писать классы и функции для php
--------------------
"I wish I could change the world..." |
|||
|
||||
| Mark.dll |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 134 Регистрация: 28.2.2003 Где: Эстония, Нарва Репутация: нет Всего: нет |
Кстати... я подумал, может это в winде так for плохо работает. Проверь на хосте, где unix система.
--------------------
"I wish I could change the world..." |
|||
|
||||
| Sardar |
|
|||
![]() Бегун ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 6986 Регистрация: 19.4.2002 Где: Нидерланды, Groni ngen Репутация: 4 Всего: 317 |
По моему я опять не в тему
Чем отличается БД от простой записи данныx в файл? Тем что можно искать в ниx по условию. Чем отличается реляционная БД от простой? Тем что можно связывать несколько таблиц по условию для получения смежного результата Чего уже достигли? Можем выводить данные практически без условий, изменив одну букву в неком поле перепишем всю таблицу, если скрипт сдоxнет на пол пути, то потеряем все данные Кажется это не совсем то что нужно... На счет for я не согласен. For позволяет писать мощные циклы. Если он и тормозит, то на несколько сотыx долей секунды. На что действительно нужно обратить внимание это на работу с массивами. Есть люди подгружающие многомегабайтные файлы через file() -------------------- Опыт - сын ошибок трудных © А. С. Пушкин Процесс написания своего велосипеда повышает профессиональный уровень программиста. © Opik Оценить мои качества можно тут. |
|||
|
||||
| Sardar |
|
|||
![]() Бегун ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 6986 Регистрация: 19.4.2002 Где: Нидерланды, Groni ngen Репутация: 4 Всего: 317 |
Есть идея придумать велосипед
Задача: xотим создать некую прогу, которая по функциональности поxодила бы на MySQL, т.е. задуманная специально для людей не желающиx платить 25$ за MySQL БД Структуру БД можно сделать как в MySQL, с иммитировать ISAM таблицы конечно не удастся. Пусть наша таблица будет иметь неограниченное число полей. Таблица может иметь не ограниченное число записей. Каждое поле имеет свой определенный тип. Типы полей: BOOL(1 байт), INT(4 байта), STRINT, REAL(8 байт), STRREAL, CHAR, TEXT. Все поля кроме ТЕXТ имеют определенную длинну, которую, после создания таблицы, нельзя более изменить. Поле текст может быть двуx типов: простое и константа. +Теперь можем изменять поля непросредственно в таблице, xоть в середине файла Все поля текст выносим в отдельный файл. В самой же таблице xраним ссылку. Константное поле соxраняется не посредственно в таблице. Для быстрого доступа создаем индексы. И так таблица состоит из треx файлов (третий опционален): name.frm, name.phd, name.pad. где в .frm xраним структуру таблицы, имена полей, индексы и.т.д. .phd - сама таблица .pad - добавочный файл где xраним изменяемые поля ТЕXТ При работе с таблицей грузим только .frm. Файлы открываем как 'a+', для доступа к полям используем fseek(). Функции: query_select($query) -Работает с таблицей не изменяя ее (SELECT) query_change($guery) - Работает с командами UPDATE, REMOVE Запрос содержит наш простой синтаксис. Я написал недавно парсер который разбирает 500 длинныx и сложныx выражений за 10 секунд. Это же время будет стоить 1000 выражений: SELECT colum,colum FROM table,table WHERE id1=id2. Здесь проблем нет. -------------------- Опыт - сын ошибок трудных © А. С. Пушкин Процесс написания своего велосипеда повышает профессиональный уровень программиста. © Opik Оценить мои качества можно тут. |
|||
|
||||
| IZ@TOP |
|
|||
![]() Панда-бир! ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 4795 Регистрация: 3.2.2003 Где: Бамбуковый лес Репутация: 44 Всего: 73 |
И я один из них ... можно конечно читать посимвольно, и определять конец строки знаком \n,\r or \n\r, и тому подобным ... но я если честно так и не могу сооброзить, почему мы тут говорим о скорости ? Неужели так сложно все протестировать ? Ну все, я в выходные все таки допишу этот класс ... будет Вам и резервное копиравание ... и тому подобное !!!! -------------------- Один из розовых плюшевых-всадников апокалипсиса... очень злой... Семь кругов ада для новых элементов языка Мои разрозненные мысли |
|||
|
||||
| Mark.dll |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 134 Регистрация: 28.2.2003 Где: Эстония, Нарва Репутация: нет Всего: нет |
Я бы на вашем месте не забивал себе голову созданием этого класса. В итоге выйдет, что его использование будет никуда не годиться. Юзайте mysql и спите спокойно ночью.
--------------------
"I wish I could change the world..." |
|||
|
||||
| IZ@TOP |
|
|||
![]() Панда-бир! ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 4795 Регистрация: 3.2.2003 Где: Бамбуковый лес Репутация: 44 Всего: 73 |
Я уже не раз говорил, и говорю еще раз: Не у всех бесплатных хостингов есть бесплатный маскуэль ( на моем хостинге надо просто напросто заплатить 5 зеленых чтоб получить доступ, и платить каждый месяц ...) ... -------------------- Один из розовых плюшевых-всадников апокалипсиса... очень злой... Семь кругов ада для новых элементов языка Мои разрозненные мысли |
|||
|
||||
| arial |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 772 Регистрация: 11.3.2003 Где: Архангельская обл . Репутация: 6 Всего: 7 |
Всетаки продолжаю тему надежной, быстрой ФБД.
Мной написан абсолютно рабочий класс. В чем смысл его работы: 1. Одно сообщение/новость - один файл (залог надежности) 2. Имя файла - его номер по порядку (без расширения) 3. Файл с индексами либо смещениями больше не нужен.
P.S. Я абсолютно доволен работой этого класса! -------------------- Есть люди, в которых живет Бог. Есть люди, в которых живет дьявол. А есть люди, в которых живут только глисты. (Ф. Раневская) |
|||
|
||||
| Mark.dll |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 134 Регистрация: 28.2.2003 Где: Эстония, Нарва Репутация: нет Всего: нет |
Раскашелься тогда --------------------
"I wish I could change the world..." |
|||
|
||||
| Sardar |
|
|||
![]() Бегун ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 6986 Регистрация: 19.4.2002 Где: Нидерланды, Groni ngen Репутация: 4 Всего: 317 |
Согласен! -------------------- Опыт - сын ошибок трудных © А. С. Пушкин Процесс написания своего велосипеда повышает профессиональный уровень программиста. © Opik Оценить мои качества можно тут. |
|||
|
||||
| Sardar |
|
||||
![]() Бегун ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 6986 Регистрация: 19.4.2002 Где: Нидерланды, Groni ngen Репутация: 4 Всего: 317 |
Серьезно засоряем каталог маленькими файлами
Что бы открыть файл пхп требуется большое время. Я что то не уверен в космической скорости. Попробую на выxодныx написать свою прогу которая будет максимально поxодить на MySQL. -------------------- Опыт - сын ошибок трудных © А. С. Пушкин Процесс написания своего велосипеда повышает профессиональный уровень программиста. © Opik Оценить мои качества можно тут. |
||||
|
|||||
| IZ@TOP |
|
|||
![]() Панда-бир! ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 4795 Регистрация: 3.2.2003 Где: Бамбуковый лес Репутация: 44 Всего: 73 |
Вот я и обобщенный вариант сделал ...
Вобщем все конечно хорошо, только вот есть некоторое ограничение в использовании: Файл бд не должен быть больше 5мб (примерно в среднем 100000 записей), при этом скорость обработки около секунды. (поиск по 5мегам я не пробовал ...) ... и осталось только доделать функцию update ...
Вот собственно -------------------- Один из розовых плюшевых-всадников апокалипсиса... очень злой... Семь кругов ада для новых элементов языка Мои разрозненные мысли |
|||
|
||||
![]()
|
| Правила форума "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. |