分享
 
 
 

文本数据库自定义函数集0.2测试版

王朝other·作者佚名  2006-12-16
窄屏简体版  字體: |||超大  

<?php

/*************************************************

^^^^^^^^文本数据库自定义函数集0.2测试版^^^^^^^^^^^

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

此函数集适用于:以文本格式存储数据,以一行为一条记录,以分隔符分隔字段的文本结构数据库。

联系方法:xbrid@163.com

技术支持:http://PHPLink.126.com

版权所有:PHP初学者联盟,未经允许不得删除版权信息

程序编写:xbrid

修改日期:2003.04.30

**************************************************/

/*

使用方法:

注意:在文本数据库中,如果使用关键字,此关键字最好要唯一,否则其删除修改时只会操作第一条记录。

text_append($filename,$linecon)→数据追加函数,返回1为成功,0为不成功

text_locate($filename,$keyword,$cutword,$colnum)→数据查找函数,如果查找到则返回此条记录,否则返回0

text_delete($filename,$keyword,$cutword,$colnum)→数据删除函数,如果有此记录则删除并返回1,否则返回0

text_modify($filename,$keyword,$cutword,$colnum,$modify)→数据修改函数,如果有此记录并修改成功返回1,否则返回0

text_insert($filename,$keyword,$cutword,$colnum,$insert)→数据插入函数,插入在关键字记录前

text_insertb($filename,$keyword,$cutword,$colnum,$insert)→数据插入函数,插入在关键字记录前

text_sort($filename,$cutword,$colnum,$mode)→数据排序函数,排序后文件被排序后生成的文件覆盖

text_select($filename,$keyword,$cutword,$colnum)→多条记录查找函数,返回多条与关键字相同的记录

text_find($filename,$keyword,$cutword,$colnum)→模糊查询函数,返回字段中包含关键字的所有记录

$filename→文件名

$linecon→要追加的内容

$keyword→查找或删除等操作时使用的关键字,此关键字要唯一。

$cutword→分隔符

$colnum→关键字(字段)所在的列,列是从0开始排列的

$modify→要修改的内容

修改或追加的内容要与本函数库适用的格式相符合

*/

//数据库追加函数

function text_append($filename,$linecon)

{

$fp=fopen($filename,"a");

flock($fp,2);

$file=fwrite($fp,$linecon);

fclose($fp);

return $file;

}

//文本数据库查找函数→结果是返回第一条记录

function text_locate($filename,$keyword,$cutword,$colnum)

{

$filelist=file($filename);

$listnum=count($filelist);

for ($i=0;$i<$listnum;$i++) {

$list=explode($cutword,$filelist[$i]);

if ($keyword==$list[$colnum]) {

return $list;

}

}

return 0;

}

//文本数据库删除记录函数

function text_delete($filename,$keyword,$cutword,$colnum)

{

$filelist=file($filename);

$listnum=count($filelist);

$fp=fopen($filename,"w");

flock($fp,2);

$yesno=1;

for ($i=0;$i<$listnum;$i++) {

$list=explode($cutword,$filelist[$i]);

if ($keyword==$list[$colnum] and $yesno==1) {

$yesno=0;

$returnkey=1;

continue;

}

fputs($fp,$filelist[$i]);

}

fclose($fp);

if (empty($returnkey)) $returnkey=0;

return $returnkey;

}

//文本数据库修改记录函数

function text_modify($filename,$keyword,$cutword,$colnum,$modify)

{

$filelist=file($filename);

$listnum=count($filelist);

$fp=fopen($filename,"w");

flock($fp,2);

$yesno=1;

for ($i=0;$i<$listnum;$i++) {

$list=explode($cutword,$filelist[$i]);

if ($keyword==$list[$colnum] and $yesno==1) {

fputs($fp,$modify);

$yesno=0;

$returnkey=1;

continue;

}

fputs($fp,$filelist[$i]);

}

fclose($fp);

if (empty($returnkey)) $returnkey=0;

return $returnkey;

}

//文本数据库插入记录函数→插入以关键字为记录的前面

function text_insert($filename,$keyword,$cutword,$colnum,$insert)

{

$filelist=file($filename);

$listnum=count($filelist);

$fp=fopen($filename,"w");

flock($fp,2);

for ($i=0;$i<$listnum;$i++) {

$list=explode($cutword,$filelist[$i]);

if ($keyword==$list[$colnum]) {

fputs($fp,$insert);

}

fputs($fp,$filelist[$i]);

}

fclose($fp);

}

//文本数据库插入记录函数→插入以关键字为记录的后面

function text_insertb($filename,$keyword,$cutword,$colnum,$insert)

{

$filelist=file($filename);

$listnum=count($filelist);

$fp=fopen($filename,"w");

flock($fp,2);

for ($i=0;$i<$listnum;$i++) {

fputs($fp,$filelist[$i]);

$list=explode($cutword,$filelist[$i]);

if ($keyword==$list[$colnum]) {

fputs($fp,$insert);

$returnkey=1;

}

}

fclose($fp);

if (empty($returnkey)) $returnkey=0;

return $returnkey;

}

//文本数据库排序

function text_sort($filename,$cutword,$colnum,$mode)

{

$list=file($filename);

for ($i=0;$i<count($list);$i++) {

$list1= explode($cutword, $list[$i]);

$list2[($list[$i])]=$list1[$colnum];

}

if ($mode=="a") {

@asort($list2);

@reset($list2);

}

if ($mode=="d") {

@arsort($list2);

@reset($list2);

}

for ($all=0;$all<=count($list2);$all++) {

$newlist[] = key($list2);

if (!(next($list2))) break;

}

$fp=fopen($filename,"w");

flock($fp,2);

$listnum=count($newlist);

for ($i=0;$i<$listnum;$i++) {

fputs($fp,$newlist[$i]);

}

fclose($fp);

}

//文本数据库多条记录查找函数→返回所有与关键字相同的数据

function text_select($filename,$keyword,$cutword,$colnum)

{

$filelist=file($filename);

$listnum=count($filelist);

for ($i=0;$i<$listnum;$i++) {

$list=explode($cutword,$filelist[$i]);

if ($keyword==$list[$colnum]) {

$newlist[]=$filelist[$i];

}

}

if (empty($newlist)) return 0;

else return $newlist;

}

//文本数据库模糊查找函数→返回所有包含关键字的数据

function text_find($filename,$keyword,$cutword,$colnum)

{

$filelist=file($filename);

$listnum=count($filelist);

for ($i=0;$i<$listnum;$i++) {

$list=explode($cutword,$filelist[$i]);

if (eregi($keyword,$list[$colnum])) {

$newlist[]=$filelist[$i];

}

}

if (empty($newlist)) return 0;

else return $newlist;

}

//自定义的数组排序

function array_sort($list,$cutword,$colnum,$mode)

{

for ($i=0;$i<count($list);$i++) {

$list1= explode($cutword, $list[$i]);

$list2[$list[$i]]=$list1[$colnum];

}

if ($mode=="a") {

@asort($list2);

@reset($list2);

}

if ($mode=="d") {

@arsort($list2);

@reset($list2);

}

for ($all=0;$all<count($list2);$all++) {

$newlist[]=key($list2);

if (!(next($list2))) break;

}

return $newlist;

}

/*************************************************

^^^^^^^^文本数据库自定义函数集0.2测试版^^^^^^^^^^^

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

此函数集适用于:以文本格式存储数据,以一行为一条记录,以分隔符分隔字段的文本结构数据库。

联系方法:xbrid@163.com

技术支持:http://PHPLink.126.com

版权所有:PHP初学者联盟,未经允许不得删除版权信息

程序编写:xbrid

写作日期:2003.04.30

**************************************************/

/*

使用方法:

text_append($filename,$linecon)→数据追加函数

$filename是文件名,$linecon是要追加的内容,此内容的格式要与文件的分隔格式相同

函数返回值:1为成功,0为不成功。

text_locate($filename,$keyword,$cutword,$colnum)→数据查找函数

$filename为文件名,$keyword为查找关键字,$cutword为分隔符,$colnum为关键字所在的列段,列段的起始号为0

函数返回值:有此记录则返回此记录的数组(以分隔符分隔后的数据),否则返回0

注意:返回的数据值是字段值,此条记录是数据库中的查找结果的第一条记录。

text_delete($filename,$keyword,$cutword,$colnum)→数据删除函数,关键字要唯一,否则会删除所有与关键字相同的记录

$filename为文件名,$keyword为删除关键字,$cutword为分隔符,$colnum为关键字所在的列段,列段的起始号为0

函数返回值:有此记录则删除并返回1,否则返回0

text_modify($filename,$keyword,$cutword,$colnum,$modify)→数据修改函数

$filename为文件名,$keyword为修改关键字,$cutword为分隔符,$colnum为关键字所在的列段,列段的起始号为0

$modify为修改后内容,格式要与文件分隔格式相同

函数返回值:有此记录则修改,并返回1,否则返回0

此函数不改变此记录所在行

text_insert($filename,$keyword,$cutword,$colnum,$insert)→数据插入函数,插入位置在关键字前

$filename为文件名,$keyword为关键字,$cutword为分隔符,$colnum为关键字所在的列段,列段的起始号为0

$insert为要插入的内容,其格式要与文件分隔格式相同

函数返回值:有关键字记录则在其前插入并返回1,否则不对文件作修改并返回0

text_insertb($filename,$keyword,$cutword,$colnum,$insert)→数据插入函数,插入位置在关键字后

$filename为文件名,$keyword为修改关键字,$cutword为分隔符,$colnum为关键字所在的列段,列段的起始号为0

$insert为要插入的内容,其格式要与文件分隔格式相同

函数返回值:有关键字记录则在其后插入并返回1,否则不对文件作修改并返回0

text_sort($filename,$cutword,$colnum,$mode)→数据排序函数

$filename为文件名,$cutword为分隔符,$colnum为关键字所在的列段,列段的起始号为0,$mode为排列方式,a为升序d为降序

函数返回值:此函数无返回值,排序后此文件被重新排序的文件覆盖,此函数使用时要注意此点。

text_select($filename,$keyword,$cutword,$colnum)→多条数据查找函数

$filename为文件名,$keyword为查找关键字,$cutword为分隔符,$colnum为关键字所在的列段,列段的起始号为0

函数返回值:如果有关键字的记录则返回所有与关键字相同的记录数据,否则返回0

注意:返回的是记录数据,与数据库的格式相同,需要重新进行分隔。

text_find($filename,$keyword,$cutword,$colnum)→数据模糊查询函数

$filename为文件名,$keyword为查找关键字,$cutword为分隔符,$colnum为关键字所在的列段,列段的起始号为0

函数返回值:返回查找字段中包含此关键字的所有记录数据,否则返回0

注意:返回的是记录数据,是多条数据,与数据库的格式相同,需要重新进行分隔。

array_sort($list,$cutword,$colnum,$mode)→《数组》排序函数

$list为数组名,$cutword为分隔符,$colnum为关键字所在的列段,列段的起始号为0,$mode为排列方式,a为升序d为降序

函数返回值:返回值是排序后的数组,格式与排序前的一样,显示内容时,需要进行重新分隔处理。

*/

?>

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有