badpenguin/flatfiledb

PHP 平文件数据库 API

dev-master 2022-04-02 09:52 UTC

This package is not auto-updated.

Last update: 2024-09-14 18:04:23 UTC


README

用于 CMS 的 PHP 平文件数据库库,带有缓存

更多信息可在 http://www.badpenguin.org/php-flatfiledb 获取

为什么?

在我的 VPS 上,我使用的是 WordPress,这是一个臃肿缓慢的 MySQL 应用程序。

更快的网站在 SEO 排名方面表现也更好。

技术

  • 不要重新发明轮子。

  • 使用 "dba" 和 "qdbm" 格式。

  • "dba" 格式可以从 Perl 和 Bash 访问。

特性

  • DBA 是一个模块,因此比任何自制的实现都要快。

  • 表锁定。

  • 库在 DBA 之上有一个小小的 "缓存" 系统。

  • 可以存储任何东西:字符串、数组、对象。

路线图

  • 数据库锁定。

  • 禁用锁定。

  • 实现 "composer"

示例

打开数据库

$cms = FlatFile::open('db/cms.qdbm');

写入帖子

/* Create an Object */
$post = new stdClass;
$post->id=5;
$post->title='my title';
$post->body='<p>my content</p>';
$post->last_modified_time = time();
$post->tags = array('featured','gallery');

$cms->set($post->id,$post);
if (!$post) die('Save failed');

获取帖子

$post = $cms->get($post_id);
if (!$post) die('Post not found');

检查键是否存在

if ($cms->is_valid('manteinance_mode')) die('Website is under manteinance');

删除键

$cms->delete('manteinance_mode');

获取所有数据

print_r($cms->get_all());