php存sqlite图片,小文件php+SQLite存储方案

小文件php+SQLite存储方案

发布于 2014-11-18 19:57:50 | 168 次阅读 | 评论: 0 | 来源: 网友投递

SQLite轻量级关系型数据库SQLite,是一款轻型的数据库,是遵守ACID的关系型数据库管理系统,它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了。它能够支持Windows/Linux/Unix等等主流的操作系统,同时能够跟很多程序语言相结合,比如 Tcl、C#、PHP、Java等,还有ODBC接口,同样比起Mysql、PostgreSQL这两款开源世界著名的数据库管理系统来讲,它的处理速度比他们都快。

本文为大家讲解的是小文件php+SQLite存储方案,感兴趣的同学参考下。

在互联网快速发展的背景下,网络上的数据内容呈几何级的增长,而其中增长最快并且最容易给信息基础架构带来挑战的就是数目庞大的小文件(如图片、电子图书、邮件等)。

我们草根站长购买的虚拟主机往往都有文件数量限制,大量小文件占用大量资源,落伍精华区也有兄弟推荐豆瓣的解决方法,但是要有主机权限。只能另装思路,采用php+SQLite解决问题,经过我测试,切实可行,现在推荐给大家。

程序代码:

创建数据库文件:php1.php

$db = new SQLite3('mysqlitedb.db');

//获取文件2进制流

$filename = "http://www.xxx.com/logo.gif";

$handle = fopen($filename, "r");

$contents = fread($handle, filesize ($filename));

fclose($handle);

//创建数据表

$db->exec('CREATE TABLE person (idnum TEXT,name TEXT,photo BLOB)');

$stmt = $db->prepare("INSERT INTO person VALUES ('41042119720101001X', '张三',?)");

$stmt->bindValue(1, $contents, SQLITE3_BLOB);

$stmt->execute();

读数据文件:php2.php

$pdo = new SQLite3('mysqlitedb.db');

$results = $pdo->query('select * from person');

while ($row = $results->fetchArray()) {

ob_start();

header("Content-Type: image/jpg");

echo $row['photo'] ;

ob_end_flush();

}

?>

网页引用:

ANSYS教程

info.php

相关阅读:

小文件php+SQLite存储方案

PHP SQLite类

php SQLite学习笔记与常见问题

SQLite PHP

Android操作存放在assets文件夹下SQLite数据库的方法

SQLite多线程使用总结

查看SQLite中的数据信息方法

SQLite创建表并添加数据简单示例

SQLite数据库常用操作示例

SQLite常用方法

SQLite常用函数及curl操作示例

python查询sqlite数据表的方法

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值