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(3)
Oct 09 PHP
jQuery EasyUI API 中文文档 - DateBox日期框
Oct 15 PHP
PHP中return 和 exit 、break和contiue 区别与用法
Apr 09 PHP
Yii实现MySQL多数据库和读写分离实例分析
Dec 03 PHP
php阿拉伯数字转中文人民币大写
Dec 21 PHP
在WordPress中实现发送http请求的相关函数解析
Dec 29 PHP
PHP引用的调用方法分析
Apr 25 PHP
PHP模型Model类封装数据库操作示例
Mar 14 PHP
Yii框架参数配置文件params用法实例分析
Sep 11 PHP
php定期拉取数据对比方法实例
Sep 22 PHP
解决laravel上传图片之后,目录有图片,但是访问不到(404)的问题
Oct 14 PHP
php设计模式之组合模式实例详解【星际争霸游戏案例】
Mar 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
无法在发生错误时创建会话,请检查 PHP 或网站服务器日志,并正确配置 PHP 安装(win+linux)
2012/05/05 PHP
逆序二维数组插入一元素的php代码
2012/06/08 PHP
php计算两个日期时间差(返回年、月、日)
2014/06/19 PHP
实例详解PHP中html word 互转的方法
2016/01/28 PHP
php基于curl实现的股票信息查询类实例
2016/11/11 PHP
THINKPHP截取中文字符串函数实例代码
2017/03/20 PHP
php-fpm中max_children的配置
2019/03/15 PHP
JavaScript中的History历史对象
2008/01/16 Javascript
Node.js 异步编程之 Callback介绍(一)
2015/03/30 Javascript
BootstrapTable与KnockoutJS相结合实现增删改查功能【一】
2016/05/10 Javascript
vue2.0 element-ui中el-select选择器无法显示选中的内容(解决方法)
2018/08/24 Javascript
vue 使用vue-i18n做全局中英文切换的方法
2018/10/29 Javascript
实例介绍JavaScript中多种组合继承
2019/01/20 Javascript
js贪心算法 钱币找零问题代码实例
2019/09/11 Javascript
[02:02]2018DOTA2亚洲邀请赛Mineski赛前采访
2018/04/04 DOTA
python显示生日是星期几的方法
2015/05/27 Python
利用Python实现颜色色值转换的小工具
2016/10/27 Python
Python搭建HTTP服务器和FTP服务器
2017/03/09 Python
Python数据拟合与广义线性回归算法学习
2017/12/22 Python
python PyTorch预训练示例
2018/02/11 Python
用Python下载一个网页保存为本地的HTML文件实例
2018/05/21 Python
TensorFlow用expand_dim()来增加维度的方法
2018/07/26 Python
python列表插入append(), extend(), insert()用法详解
2019/09/14 Python
python 有效的括号的实现代码示例
2019/11/11 Python
python 6种方法实现单例模式
2020/12/15 Python
CSS3中的弹性布局em运用入门详解 1em等于多少像素
2021/02/08 HTML / CSS
html5+css3实现一款注册表单实例
2013/04/17 HTML / CSS
美体小铺美国官网:The Body Shop美国
2017/11/10 全球购物
毕业生个人求职信范例分享
2013/12/17 职场文书
酒后驾驶检讨书
2014/01/27 职场文书
什么样的创业计划书可行性高?
2014/02/01 职场文书
《吃水不忘挖井人》教学反思
2014/04/15 职场文书
生产车间标语
2014/06/11 职场文书
起诉离婚协议书样本
2014/11/25 职场文书
2014年科协工作总结
2014/12/09 职场文书
Python实现归一化算法详情
2022/03/18 Python