龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > web编程 > php编程 >

php实现对文本数据库的数据显示、加入、修改、

时间:2014-07-22 14:52来源: 作者: 点击:
分享到:
php实现对文本数据库的数据显示、加入、修改、删除、查询五大基本操作的方法br / div 此文本数据库共有字段9个:/div div span style=white-space:pre; /spanprivate $bankid; span style=white-space:pre; /sp
php实现对文本数据库的数据显示、加入、修改、删除、查询五大基本操作的方法
此文本数据库共有字段9个:
private $bankid; //银行ID
private $bankname; //银行名称
private $bankimg; //银行图片
private $bankarea; //覆盖区域
private $bankcard; //受理卡种
private $banklimit; //支付限额
private $bankpasswd; //交易密码
private $banknote; //银行信息备注
private $bankmiss; //银行其他信息内容。

<?php
/**
php实现对文本数据库的数据显示、加入、修改、删除、查询五大基本操作的方法。 
此文本数据库共有字段9个:
	private $bankid;	//银行ID
	private $bankname;	//银行名称
	private $bankimg;	//银行图片
	private $bankarea;	//覆盖区域
	private $bankcard;	//受理卡种
	private $banklimit;	//支付限额
	private $bankpasswd;	//交易密码
	private $banknote;	//银行信息备注
	private $bankmiss;	//银行其他信息内容。
@abstract	TxtDB store
@access 	public
@author		yuchao1@staff.sina.com.cn
 
 */

class TxtDB {
	
	private $bankid; //银行ID
	private $bankname; //银行名称
	private $bankimg; //银行图片
	private $bankarea; //覆盖区域
	private $bankcard; //受理卡种
	private $banklimit; //支付限额
	private $bankpasswd; //交易密码
	private $banknote; //银行信息备注
	private $bankmiss; //银行其他信息
	

	public function __construct() {
		$bankid = ""; //银行ID
		$bankname = ""; //银行名称
		$bankimg = ""; //银行图片
		$bankarea = ""; //覆盖区域
		$bankcard = ""; //受理卡种
		$banklimit = ""; //支付限额
		$bankpasswd = ""; //交易密码类型
		$banknote = ""; //银行信息备注
		$bankmiss = ""; //银行其他信息
	}
	/**
	 * 加入数据程序段。
	 * $bankinfo array	要插入的银行信息列表
	 * $bankinfo["bankid"]$bankinfo["bankname"]$bankinfo["bankimg"]$bankinfo["bankarea"]
	 * $bankinfo["bankcard"]$bankinfo["banklimit"]
	 * $bankinfo["bankpasswd"]$bankinfo["banknote"]$bankinfo["bankmiss"]
	 * @return boolean 成功  true
	 * 	失败 false
	 */
	public static function insert($bankinfo) {
		$date = date ( "Y-m-d H:i:s" ); //取得系统时间 

		foreach ( $bankinfo as $key => $value ) {
			$key = trim ( $value ); //去掉银行内容后面的空格.
		}
		try {
			$fp = fopen ( "banklist.txt", "a" ); //以只写模式打开banklist.txt文本文件,文件指针指向文件尾部. 
			$str = $bankinfo ["bankid"] . "|" . $bankinfo ["bankname"] . "|" . $bankinfo ["bankimg"] . "|" . 
			$bankinfo ["bankarea"] . "|" . $bankinfo ["bankcard"] . "|" . $bankinfo ["banklimit"] . "|" . 
			$bankinfo ["bankpasswd"] . "|" . $bankinfo ["banknote"] . "|" . $bankinfo ["bankmiss"] . "|" . $date . "\r\n";
			//将所有银行的数据赋予变量$str,"|"的目的是用来今后作数据分割时的数据间隔符号。 
			fwrite ( $fp, $str ); //将数据写入文件 
			fclose ( $fp ); //关闭文件 
			//其中的$banklist是由银行表单传过来的数据。
			return true;
		} catch ( Exception $e ) {
			return false;
		}
	}
	
	public static function show() {
		//数据显示程序段 
		if (file_exists ( "banklist.txt" )) { //检测文件是否存在 
			$array = file ( "banklist.txt" ); //将文件全部内容读入到数组$array 
			$arr = array_reverse ( $array ); //将$array里的数据安行翻转排列(即最后一行当第一行,依此类推)读入数组$arr的每一个单元($arr[0]...)。 
		}
		var_dump ( $arr );
	}
	
	/**
	 * 数据修改程序段
	 * $bankinfo array	要插入的银行信息列表
	 * $bankinfo["bankid"]$bankinfo["bankname"]$bankinfo["bankimg"]$bankinfo["bankarea"]
	 * $bankinfo["bankcard"]$bankinfo["banklimit"]
	 * $bankinfo["bankpasswd"]$bankinfo["banknote"]$bankinfo["bankmiss"]
	 * @return boolean 成功  true
	 * 	失败 false
	 */ 
	public static function alter($bankinfo) {
		$date = date ( "Y-m-d H:i:s" ); //取得系统修改时间 
		$list = file ( "banklist.txt" ); //读取整个banklist.txt文件到数组$list,数组每一个元素为一条银行($list[0]是第一条银行的数据、$list[1]是第一条银行的数据..... 
		$n = count ( $list ); //计算$list内容里的银行总数,并赋予变量$n
		foreach ( $bankinfo as $key => $value ) {
			$key = trim ( $value ); //去掉银行内容后面的空格.
		}
		if ($n > 0) { //如果银行数大于0 
			$fp = fopen ( "banklist.txt", "w" ); //则以只写模式打开文件banklist.txt
			
			for($i = 0; $i < $n; $i ++) { //进入循环 
				if (eregi ( $bankinfo["bankid"], $list [$i] )) { //将传银行bankid与数组单元$list里内容进行字串匹配比较 
					$f = explode ( "|", $list [$i] ); //如果找到匹配,就以"|"作为分隔符,切开银行信息$list[$i](第$i条银行),并将这些数据赋予数组$f 
					$f[0] = $bankinfo["bankid"];
					$f[1] = $bankinfo["bankname"];
					$f[2] = $bankinfo["bankimg"];
					$f[3] = $bankinfo["bankarea"];
					$f[4] = $bankinfo["bankcard"];
					$f[5] = $bankinfo["banklimit"];
					$f[6] = $bankinfo["bankpasswd"];
					$f[7] = $bankinfo["banknote"];
					$f[8] = $bankinfo["bankmiss"];
					$f[9] = $date;
					$list [$i] = $f [0] . "|" . $f [1] . "|" . $f [2] . "|" . $f [3] . "|" . $f [4] . "|" . $f [5] . "|" . $f [6] . "|" . $f [7] . "|" . $f [8] . "|" . $f [9] . "\r\n"; 
					//将数组单元$list[$i]的内容用数组$f加上分隔符"|"代替。 
					break; //跳出循环 
				}
			}//循环结束符 
		}
		for($i = 0; $i <= $n; $i ++) { //进入循环 
			fwrite ( $fp, $list [$i] ); //将数组$list的每个单元为一行,写入文件banklist.txt 
		} //循环结束符 
		fclose ( $fp ); //关闭文件 
	}
	/**
	 * 数据删除程序段 
	 * @param	$bankid	银行id号
	 * @return boolean true 成功
	 * false 失败
	 * 
	 */
	public static function delete($bankid) {
		$list = file ( "banklist.txt" ); //读取整个banklist.txt文件到数组$list,数组每一个元素为一条银行($list[0]是第一条银行的数据、$list[1]是第一条银行的数据..... 
		$n = count ( $list ); //计算$list内容里的银行总数,并赋予变量$n 
		if ($n > 0) { //如果银行数大于0 
			$fp = fopen ( "banklist.txt", "w" ); //则以只写模式打开文件banklist.txt 
			for($i = 0; $i < $n; $i ++) { //进入循环 
				if (eregi ( $bankid, $list [$i] )) { //将发送过来的银行$bankid与数组$list[$i]里的字串进行匹配比较 
					$list [$i] = ""; //如果匹配成功,则将$list[$i]清空(达到删除的目的) 
					break; //跳出循环 
				}
			} //循环结束符 
			FOR($i = 0; $i <= $n; $i ++) { //进入循环 
				fwrite ( $fp, $list [$i] ); //将数组$list的每个单元为一行,写入文件banklist.txt 
			} //循环结束符 
			fclose ( $fp ); //关闭文件 
		}
	}
	
	/**
	 * 数据查询程序段 
	 * @param $bankid 银行ID号
	 * @return boolean 成功返回ture
	 * 失败返回 false
	 * 
	 */
	public static function select($bankid) {
		$id = 0;
		$list = file ( "banklist.txt" ); //读取整个banklist.txt文件到数组$list,
		//数组每一个元素为一条银行($list[0]是第一条银行的数据、$list[1]是第二条银行的数据..... 
		$n = count ( $list ); //计算$list内容里的银行总数,并赋予变量$n 
		$bankid = trim ( $bankid );
		if (! $bankid) { //如果$bankid为假 
			echo "您没有输入任何关键字!"; //作相关显示 
			return false;
		} else {
			if ($n > 0) { //如果银行数大于0 
				for($i = 0; $i < $n; $i ++) { //进入循环 
					if (eregi ( $bankid, $list [$i] )) { //输入的关键字与数组$list[$i]里的字串进行匹配比较 
						$row = explode ( "|", $list [$i] );
						$id = 1; //如果找到匹配,就以"|"作为分隔符,切开银行信息$list[$i](第$i条银行),并将这些数据赋予数组$row.并将变量$id赋予1,以便作为是否找到匹配的判断。 
						list ( $bankid,$bankname,$bankimg,$bankarea,$bankcard,$banklimit,$bankpasswd,$banknote,$bankmiss) = $row; //将数组$row里的单元数据按顺序赋予括号里的变量 
						//echo $bankname;
						return $row;
					}
				}//循环结束符 
			}
		}
		if ($id == 0) {
			echo "没有找到与关键字匹配的银行!";
			return false;
		} //如果$id=0则表示没找到匹配,显示相关提示 
	

	}
	
	public function __destruct() {
	
	}
}
?>
精彩图集

赞助商链接