от
Каковы лучшие практики по созданию плоских файлов структуры баз данных в PHP? Многие из более зрелых PHP в плоский файл базы я вижу там попытку реализовать SQL-подобный синтаксис запросов, что составляет более лучшие для моих целей в большинстве случаев (я бы просто использовать базы данных в этой точке). Есть ли элегантный трюков там, чтобы получить хорошую производительность и характеристики, с небольшой код накладные?

Ваш ответ

Отображаемое имя (по желанию):
Конфиденциальность: Ваш электронный адрес будет использоваться только для отправки уведомлений.

12 Ответы

0 голосов
от
Каковы лучшие практики по созданию плоских файлов структуры баз данных в PHP? Многие из более зрелых PHP в плоский файл базы я вижу там попытку реализовать SQL-подобный синтаксис запросов, что составляет более лучшие для моих целей в большинстве случаев (я бы просто использовать базы данных в этой точке). Есть ли элегантный трюков там, чтобы получить хорошую производительность и характеристики, с небольшой код накладные?
0 голосов
от
Ну, какова природа плоских баз данных. Являются они большими или маленькими. Это простой массив с массивами в них? если его что-то просто скажет, пользовательских профилей, построенных так:
$user = array("name" =
0 голосов
от
Вы могли бы рассмотреть с SQLite. Это почти так же просто, как плоские файлы, но у вас есть SQL-движок для запросов. Это слишком хорошо работает с PHP.
0 голосов
от
На мой взгляд, используя "плоский файл базы данных" в том смысле, что ты смысл (и ответ, Ты принята) не скорее лучший способ пойти о вещах. Прежде всего, используя
serialize()
и
unserialize()
может вызвать серьезные головные боли, если кто-то и файла правок (они могут, в самом деле, поставить код arbritrary в базе данных "" должен быть запущен каждый раз.) Лично я бы сказал - почему бы не заглянуть в будущее? Там было так много раз, что у меня были проблемы, потому что я продолжаю делать мои собственные "фирменные" файлы и проект взорвалась в момент, когда она нуждается в базе данных, и я думаю: "вы знаете, я хотел бы писать в этом на базу, чтобы начать с" - Потому что рефакторинг кода занимает слишком много времени и усилий. Из этого я узнал, что в будущем Мои приложения, так что, когда он становится больше у меня нет, чтобы пойти и провести рефакторинг дней-это путь вперед. Как мне это сделать? Базы данных SQLite. Он работает в качестве базы данных использует SQL, и довольно легко перейти на MySQL (тем более если вы используете абстрактные классы для базы данных манипуляций, как я!) На самом деле, тем более с методом "принято отвечать", она может резко сократить использование памяти вашего приложения (вы не должны загрузить все "рекорды" в PHP)
0 голосов
от
Одну схему я рассматриваю для блог-платформы. Поскольку почти любой возможный вид данных, которые вы хотели бы быть отсортированы по дате, я думал об этой структуре: Одному каталогу для каждого узла содержание:
./content/YYYYMMDDHHMMSS/
Поддиректории для каждого узла, в том числе
/tags  
/authors  
/comments  
А также простые текстовые файлы в директории узел для пред - и пост-отображаемое содержимое и тому подобное. Это позволило бы простой PHP
glob()
позвонить (и скорее всего разворот массива result) запрос на что угодно в структуре содержания:
glob("content/*/tags/funny");  
Вернется путей, включая все статьи с тэгом "смешно".
0 голосов
от
Вот код, который мы используем для Лилина:
0 голосов
от
Если вы собираетесь использовать плоский файл для сохранения данных, использование XML для структурирования данных. PHP имеет встроенный анализатор XML.
0 голосов
от
Я написал две простые функции, предназначенные для хранения данных в файл. Вы можете судить сами, если она полезна в этом случае. Дело в том, чтобы сохранить в переменной PHP (если это либо массив, строка или объект) в файл.
0 голосов
от
Если вы хотите получить результат человеческого восприятия, вы также можете использовать этот тип файлов :
ofaurax|27|male|something|
another|24|unknown||
...
Таким образом, у вас есть только один файл, вы можете отлаживать его легко (и исправить вручную), позже можно добавить поля (в конце каждой строки) и PHP код простой (для каждой линии, в зависимости от |). Однако, недостатками является то, что вы должны обработать весь файл, чтобы что-то искать (если у вас есть миллионы запись, это не нормально) и вы должны справиться с разделителем в данных (например, если Ник война|ordz).
0 голосов
от
Это вдохновляющее практическое решение: https://github.com/mhgolkar/FlatFire Он использует несколько стратегий для обработки данных... [Скопировано из файла README] Бесплатный или структурированные или смешанные
...