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 相关文章推荐
php4的彩蛋
Oct 09 PHP
PHP中for循环语句的几种变型
Nov 26 PHP
PHP中比较两个字符串找出第一个不同字符位置例子
Apr 08 PHP
php查询mssql出现乱码的解决方法
Dec 29 PHP
PHP 前加at符合@的作用解析
Jul 31 PHP
ThinkPHP自定义Redis处理SESSION的实现方法
May 16 PHP
PHP常用排序算法实例小结【基本排序,冒泡排序,快速排序,插入排序】
Feb 07 PHP
php打开本地exe程序,js打开本地exe应用程序,并传递相关参数方法
Feb 06 PHP
PHP使用pdo连接access数据库并循环显示数据操作示例
Jun 05 PHP
PHP命名空间namespace及use的简单用法分析
Aug 03 PHP
Yii框架通过请求组件处理get,post请求的方法分析
Sep 03 PHP
gearman中worker常驻后台,导致MySQL server has gone away的解决方法
Feb 27 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
Banner程序
2006/10/09 PHP
第十三节--对象串行化
2006/11/16 PHP
php多个字符串替换成同一个的解决方法
2013/06/18 PHP
Laravel中的Auth模块详解
2017/08/17 PHP
jQuery使用手册之三 CSS操作
2007/03/24 Javascript
javascript实现简单的二级联动
2015/03/19 Javascript
javascript动态创建表格及添加数据实例详解
2015/05/13 Javascript
jQuery实现转动随机数抽奖效果的方法
2015/05/21 Javascript
jQuery的图片轮播插件PgwSlideshow使用详解
2016/08/11 Javascript
jQuery EasyUI datagrid在翻页以后仍能记录被选中行的实现代码
2016/08/15 Javascript
JavaScript中数组slice和splice的对比小结
2016/09/22 Javascript
微信js-sdk预览图片接口及从拍照或手机相册中选图接口用法示例
2016/10/13 Javascript
bootstrap使用validate实现简单校验功能
2016/12/02 Javascript
NodeJS实现图片上传代码(Express)
2017/06/30 NodeJs
详解react使用react-bootstrap当轮子造车
2017/08/15 Javascript
React Native使用百度Echarts显示图表的示例代码
2017/11/07 Javascript
vue实现裁切图片同时实现放大、缩小、旋转功能
2018/03/02 Javascript
微信小程序使用form表单获取输入框数据的实例代码
2018/05/17 Javascript
使用express获取微信小程序二维码小记
2019/05/21 Javascript
[26:50]2018完美盛典DOTA2表演赛
2018/12/17 DOTA
使用python实现ANN
2017/12/20 Python
Python自定义函数定义,参数,调用代码解析
2017/12/27 Python
Python实现的旋转数组功能算法示例
2019/02/23 Python
如何在 Django 模板中输出 &quot;{{&quot;
2020/01/24 Python
如何快速理解python的垃圾回收机制
2020/09/01 Python
基于python+selenium自动健康打卡的实现代码
2021/01/13 Python
HTML5上传文件显示进度的实现代码
2012/08/30 HTML / CSS
浅谈html5 video 移动端填坑记
2018/01/15 HTML / CSS
总经理办公室主任岗位职责
2013/11/12 职场文书
四下基层实施方案
2014/03/28 职场文书
自我查摆剖析材料
2014/10/11 职场文书
临时工聘用合同协议书
2014/10/29 职场文书
社区党员群众路线教育实践活动心得体会
2014/11/03 职场文书
2015年家长学校工作总结
2015/04/22 职场文书
电影圆明园观后感
2015/06/03 职场文书
导游词之任弼时故居
2020/01/07 职场文书