php 之 没有mysql支持时的替代方案


Posted in PHP onOctober 09, 2006

一般个人免费主页空间都不会提供mysql支持,就是提供也很苛刻,所以寻找也个良好的替代方案很重要哦!
PHP的文件处理功能很强大,所以可以用文件的存取来代替来!
(要知道没有数据库的时候,什么都是用文件组织的哦!呵呵!),其中个数据项用特殊符号分割,我采用的是“||”,方便通过explode()函数读取单个记录!
其实这里数据库的思想还是可以用到的!象数据库的索引!
所以必须先做个索引文件!(这样说也并不正确)
就以留言本来说吧:
主要文件是:
index.database
其结构如下:
留言人姓名||留言人性别||留言时间||留言内容存放位置||feiyn(这项是方便读取时的被‘n'干恼的!
每条存储一行可以方便的通过PHP的fgets()函数读取,或者file()函数读取每行到数组
为了防止多人同是对数据的写入冲突,故还需要加锁(也用文件实现)
以下是写入代码
<?php
//必须传入以下参量:
//留言人姓名 $name
//留言人性别 $sex
//留言时间  $time
//留言内容存放位置 $savePosite
$indexFile="index.database";
$indexFileLock=$indexFile."Lock";
$message=$name."||".$sex."||".$time."||".$savePosite."||feiy||";//这就是要写入的记录
while(file_exists($indexFileLock)) $temp++; //检测是否已加锁
fclose(fopen($indexFileLock,"w"));      //如没有则进入并加锁避免同是访问冲突
$fp=fopen($indexFile,"a");
fputs($message,strlen($message));
fclose($fp);
unlink($indexFileLock);//解锁
?>
读取代码
<?php
$indexFile="index.database";
$indexFileLock=$indexFile."Lock";
while(file_exists($indexFileLock)) $temp++; //检测是否已加锁
fclose(fopen($indexFileLock,"w"));      //如没有则进入并加锁避免同是访问冲突
$ary=file($indexFile);
unlink($indexfileLock);//解锁
for($i=0;$i<sizeof($ary);$i++){
$tempAry=explode("||",$ary[$i]);
echo("name:".$tempAry[0]);
echo("sex:".$tempAry[1]);
echo("sex:".$tempAry[2]);
echo("savePosite:",$tempAry[3]);//可以从该地址读取留言内容
}
?>

通过以上可以方便的解决常用的网页运用,比如聊天室,BBS论坛,书签之类
如果那位大虾有更好的解决方法,请赐教!谢谢!
我的主页:feiyschool.51.net
QQ:23072155
email:feiyhy@sina.com

【本文版权归作者feiy与奥索网共同拥有,如需转载,请注明作者及出处】    

PHP 相关文章推荐
PHP中str_replace函数使用小结
Oct 11 PHP
基于PHP字符串的比较函数strcmp()与strcasecmp()的使用详解
May 15 PHP
jquery+php+ajax显示上传进度的多图片上传并生成缩略图代码
Oct 15 PHP
php实现微信公众平台账号自定义菜单类
Dec 02 PHP
php中Array2xml类实现数组转化成XML实例
Dec 08 PHP
php使用cookie保存登录用户名的方法
Jan 26 PHP
适用于初学者的简易PHP文件上传类
Oct 29 PHP
Joomla实现组件中弹出一个模式(modal)窗口的方法
May 04 PHP
mac下多个php版本快速切换的方法
Oct 09 PHP
PHP从二维数组得到N层分类树的实现代码
Oct 11 PHP
PHP实现驼峰样式字符串(首字母大写)转换成下划线样式字符串的方法示例
Aug 10 PHP
PHP 访问数据库配置通用方法(json)
May 20 PHP
在PWS上安装PHP4.0正式版
Oct 09 #PHP
在IIS上安装PHP4.0正式版
Oct 09 #PHP
html中select语句读取mysql表中内容
Oct 09 #PHP
用PHP实现ODBC数据分页显示一例
Oct 09 #PHP
使用 php4 加速 web 传输
Oct 09 #PHP
php 中include()与require()的对比
Oct 09 #PHP
php生成WAP页面
Oct 09 #PHP
You might like
PHP 替换模板变量实现步骤
2009/08/24 PHP
zen cart新进商品的随机排序修改方法
2010/09/10 PHP
php创建无限级树型菜单
2015/11/05 PHP
php类自动装载、链式操作、魔术方法实现代码
2017/07/23 PHP
php微信分享到朋友圈、QQ、朋友、微博
2019/02/18 PHP
Json和Jsonp理论实例代码详解
2013/11/15 Javascript
js中Math之random,round,ceil,floor的用法总结
2013/12/26 Javascript
jQuery判断浏览器并动态调整select宽度的方法
2016/03/02 Javascript
javascript实现列表切换效果
2016/05/02 Javascript
jquery判断对象是否为空并遍历对象的简单实例
2016/07/26 Javascript
Vuejs第七篇之Vuejs过渡动画案例全面解析
2016/09/05 Javascript
让DIV的滚动条自动滚动到最底部的3种方法(推荐)
2016/09/24 Javascript
vue之数据交互实例代码
2017/06/20 Javascript
详解React Native 采用Fetch方式发送跨域POST请求
2017/11/15 Javascript
Vue 框架之动态绑定 css 样式实例分析
2018/11/14 Javascript
点击按钮弹出模态框的一系列操作代码实例
2019/03/29 Javascript
vue自定义js图片碎片轮播图切换效果的实现代码
2019/04/28 Javascript
DatePickerDialog 自定义样式及使用全解
2019/07/09 Javascript
jQuery 移除事件的方法
2020/06/20 jQuery
[01:17]炒鸡美酒第四天TA暴走
2018/06/05 DOTA
[04:32]玩具屠夫中文语音节选
2020/08/23 DOTA
python OpenCV学习笔记直方图反向投影的实现
2018/02/07 Python
FFrpc python客户端lib使用解析
2019/08/24 Python
TensorFLow 不同大小图片的TFrecords存取实例
2020/01/20 Python
Python3.7在anaconda里面使用IDLE编译器的步骤详解
2020/04/29 Python
处理textarea中的换行和空格
2019/12/12 HTML / CSS
百联网上商城:i百联
2017/01/28 全球购物
C语言基础笔试题
2013/04/27 面试题
健康家庭事迹材料
2014/05/02 职场文书
银行竞聘上岗演讲稿
2014/09/12 职场文书
普通党员自我剖析材料
2014/10/07 职场文书
入党介绍人考察意见
2015/06/01 职场文书
永不妥协观后感
2015/06/10 职场文书
导游词之西安大清真寺
2019/12/17 职场文书
mybatis调用sqlserver存储过程返回结果集的方法
2021/05/08 SQL Server
ipad隐藏软件app图标方法
2022/04/19 数码科技