小文件php+SQLite存储方案


Posted in PHP onSeptember 04, 2010

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

现在公开代码:
创建数据库文件:php1.php

$db = new SQLite3('mysqlitedb.db'); //获取文件2进制流 
$filename = "https://3water.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
<?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(); 
} 
?>

网页引用:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
<title>ANSYS教程</title> 
</head> 
<body> 
<img src="https://3water.com/info.php" width="22" height="30" /> 
</body> 
</html>
PHP 相关文章推荐
一个用于MySQL的PHP XML类
Oct 09 PHP
PHP字符串的编码问题的详细介绍
Apr 27 PHP
PHP批量检测并去除文件BOM头代码实例
May 08 PHP
php输入流php://input使用浅析
Sep 02 PHP
php最简单的删除目录与文件实现方法
Nov 28 PHP
thinkPHP下ueditor的使用方法详解
Dec 26 PHP
Yii中创建自己的Widget实例
Jan 05 PHP
PHP实现文件上传与下载实例与总结
Mar 13 PHP
php微信公众号开发之二级菜单
Oct 20 PHP
PHP实现的62进制转10进制,10进制转62进制函数示例
Jun 06 PHP
laravel 解决paginate查询多个字段报错的问题
Oct 22 PHP
PHP isset()及empty()用法区别详解
Aug 29 PHP
PHP中文件上传的一个问题
Sep 04 #PHP
PHP程序员面试 切忌急功近利(更需要注重以后的发展)
Sep 01 #PHP
PHP开发需要注意的安全问题
Sep 01 #PHP
php中函数的形参与实参的问题说明
Sep 01 #PHP
php数据库连接时容易出错的特殊符号问题
Sep 01 #PHP
PHP下利用header()函数设置浏览器缓存的代码
Sep 01 #PHP
使用bcompiler对PHP文件进行加密的代码
Aug 29 #PHP
You might like
php重定向的三种方法分享
2012/02/22 PHP
基于header的一些常用指令详解
2013/06/06 PHP
Laravel 5框架学习之模型、控制器、视图基础流程
2015/04/08 PHP
PHP中抽象类,接口功能、定义方法示例
2019/02/26 PHP
IE8 浏览器Cookie的处理
2009/01/31 Javascript
javascript parseInt 函数分析(转)
2009/03/21 Javascript
jQuery中绑定事件的命名空间详解
2011/04/05 Javascript
jQuery 过滤not()与filter()实例代码
2012/05/10 Javascript
Google Map V3 绑定气泡窗口(infowindow)Dom事件实现代码
2013/04/26 Javascript
JS实现Enter键跳转及控件获得焦点
2013/08/12 Javascript
js 加密压缩出现bug解决方案
2014/11/25 Javascript
使用JQuery实现的分页插件分享
2015/11/05 Javascript
老生常谈js中0到底是 true 还是 false
2017/03/08 Javascript
vue-router 导航钩子的具体使用方法
2017/08/31 Javascript
JavaScript canvas绘制圆弧与圆形
2020/02/18 Javascript
python模拟登陆Tom邮箱示例分享
2014/01/13 Python
从零学python系列之从文件读取和保存数据
2014/05/23 Python
python网络编程学习笔记(九):数据库客户端 DB-API
2014/06/09 Python
浅谈python中的getattr函数 hasattr函数
2016/06/14 Python
Python使用Phantomjs截屏网页的方法
2018/05/17 Python
selenium在执行phantomjs的API并获取执行结果的方法
2018/12/17 Python
python根据时间获取周数代码实例
2019/09/30 Python
python找出列表中大于某个阈值的数据段示例
2019/11/24 Python
python里的单引号和双引号的有什么作用
2020/06/17 Python
如何让python的运行速度得到提升
2020/07/08 Python
HTML 5 标签、属性、事件及浏览器兼容性速查表 附打包下载
2012/10/20 HTML / CSS
英国当代时尚和街头服饰店:18montrose
2018/12/15 全球购物
如何定义一个可复用的服务
2014/09/30 面试题
工商学院毕业生个人自我评价
2013/09/19 职场文书
给医务人员表扬信
2014/01/12 职场文书
个人校本研修方案
2014/05/26 职场文书
计算机软件专业求职信
2014/06/10 职场文书
同学会邀请函模板
2015/01/30 职场文书
2016高三毕业赠言寄语
2015/12/04 职场文书
MySQL开启事务的方式
2021/06/26 MySQL
MySQL批量更新不同表中的数据
2022/05/11 MySQL