php中文本操作的类

yipeiwu_com6年前PHP代码库
给大家一个简单的文本操作的类 
我以前写的,不过一直都没机会用了,文本不如数据库
数据是以行保存的,以\n结尾,注意你输入的数据必须以"\n"结尾的,这是几个最基本的类成员,文本的特别要注意效率问题,比如你要更新文件的2,3,4行,用:
for($i=2;$i<=4;$i++)$this->update($file,$i,$msg);不如这样的:
$data=$this->read($file);
for($i=2;$i<=4;$i++)$data[$i]=$msg;
$this->write($file,$data); 的


class text{
var $key="<?die;?>"; //数据保护
var $keylen; //数据保护长度
function text() //类的构造器
{
$this->keylen=strlen($this->lkeylen); //得到保护长度
}
function read($file) //读文件,返回一个数组
{
if(file_exists($file)):
$data=@file($file);
$data[0]=substr($data[0],$this->keylen);
return $a;
endif;
}
function write($file,$data=array()) //写文件,数据为一个数组
{
if($fp=fopen($file,"w")):
flock($fp,3);
fwrite($fp,$this->key);
foeach($data as $v)fwrite($fp,$v);
return true;
endif;
}
function add($file,$msg) 
//向文件最后添加数据(不存在就先建立文件)
{
$a=$this->read($file); //这个不管文件存在不
$a[]=$msg;
return $this->write($file,$a);
}
function insert($file,$n,$msg) //向第$n前插入数据
{
if($a=$this->read($file)):
$a[$n]=$msg.$a[$n];
return true;
endif;
}
function updata($file,$n,$msg) //更新$n数据
{
if($a=$this->read($file)):
$a[$n]=$msg;
return true;
endif
}
function del($file,$n) //删除$n数据
{
return $this->updata($file,$n,"");
}
}

相关文章

改写函数实现PHP二维/三维数组转字符串

由于工作需要,自己在手册给定的示例函数基础上改写出了这样一个函数,代码如下: 复制代码 代码如下: //将多维数组中所有的数值转换成字符串————》最多支持三维数组 function i...

浅析PHP水印技术

浅析PHP水印技术

一直以来对PHP对象处理不是很熟悉,以前都是在用的时候才找手册的。今天有人在phpchina论坛上问到水印的相关问题,恰好我也想学习下,于是研究了下PHP实现图片水印的实现。 ...

PHP逐行输出(ob_flush与flush的组合)

ob_flush/flush在手册中的描述, 都是刷新输出缓冲区, 并且还需要配套使用, 所以会导致很多人迷惑… 其实, 他们俩的操作对象不同, 有些情况下, flush根本不做什么事情...

php+dojo 的数据库保存拖动布局的一个方法dojo 这里下载

看老大介绍的dojo框架,学习着写了下。刚开始学习php 请大家指教下!发现发不了附件。发两个代码大家自己体会了。 复制代码 代码如下:<?php  sessi...

php中最简单的字符串匹配算法

本文实例讲述了php中最简单的字符串匹配算法。分享给大家供大家参考。具体实现方法如下: 复制代码 代码如下:<?php /* 最简单字符串匹配算法php实现方式 &n...