PHP文件读写

fopen的第一个输入为文件名,第二个输入确定工作方式:

'r'从起始地址开始读

'r+'起始地址开始读并且允许写入

'w'从起始地址开始只写(覆盖)

'w+'读和写也是起始地址开始

'a'附加到文件最后只写

'a+'附加到文件最后并且允许读写

创建临时文件

//创建了一个临时文件
$temp = tmpfile();
// 回到文件头
rewind($temp);
// 读取文件内容
$contents = fread($temp, 2048);    //读取文件内容

文件读写代码

<?php
	/* printf类似C语言的,%后添加要显示的属性
	 * b二进制,c为ASCLL,d整数,e科学符号(如1.23000e+2),f浮点型,o八进制,s为string,u正整数,x小写字符的十六进制,X大写字母的十六进制
	 */
	printf("There are %d items in your backet", 3);
	
	// sprintf不是用于显示,主要用于和printf使用时一样的类型转换
	echo "<br>";
	$hexstring = sprintf("%d %f %X", 65, 128, 231);
	echo $hexstring;
	
	echo "<br>";
	echo time();
	echo "<br>";
	echo time() + 7 * 24 * 60 * 60;
	echo "<br>";
	echo mktime(0, 0, 0, 1, 1, 2000) . "<br>";
	
	//echo data("Y-m-d\TH:i:sP", time());
	
	echo "<br>";
	echo "fopen测试建立文件,没有文件则创建文件" . "<br>";
	echo "fopen的第一个输入为文件名,第二个输入确定工作方式:'r'从起始地址开始读,'r+'起始地址开始读并且允许写入,'w'从起始地址开始只写(覆盖),'w+'读和写也是起始地址开始,'a'附加到文件最后只写,'a+'附加到文件最后并且允许读写" . "<br>";
	$fh = fopen("testfile.txt", 'a+') or die("Failed to create file");
	
	echo "<br>";
	echo "flock:使读写只能一个线程使用,LOCK_EX执行、LOCK_UN结束" . "<br>";
	echo "	下面的fgets和file_get_contents也只能是第一个命令运行" . "<br>";
	flock($fh, LOCK_EX);
	
	echo "<br>";
	echo "fgets:只读一行文件" . "<br>";
	$text = fgets($fh) or die("并没有文件内容,我怎么读");
	echo $text . "<br>";
	$text = fgets($fh) or die("并没有文件内容,我怎么读");
	echo $text . "<br>";
	
	echo "<br>";
	echo "file_get_contents:读全部文件,但使用flock后只能第一个命令读取" . "<br>";
	echo file_get_contents("testfile.txt") . "<br>";;
	
	echo "<br>";
	echo "写入文件:fwrite(\$fh, \"写入文件用fwrite\") or die(\"Could not write to file\");" . "<br>";
	fwrite($fh, "写入文件用fwrite\r\n") or die("Could not write to file");
	
	flock($fh, LOCK_UN);
	
	echo "关闭文件fclose" . "<br>";
	fclose($fh);	
	
	echo "<br>";
	//$text = <<<_END line 1 line 2 line 3 _END;
	echo "打开文件前判断文件是否存在:file_exists(\"testfile.txt\")" . "<br>";
	if(file_exists("testfile.txt"))
	{
		echo "File exists" . "<br>";
	}
	
	echo "<br>";
	echo "使用copy拷贝文件" . "<br>";
	copy('testfile.txt', 'testfile2.txt') or die("Could not copy file");
	
	echo "<br>";
	echo "使用rename重命名文件" . "<br>";
	if(!rename('testfile2.txt', 'testfile2.new'))
		echo "Could not rename file" . "<br>";
	else
		echo "File successfully renamed to 'testfile2.new'" . "<br>";
	
	echo "<br>";
	echo "使用unlink删除文件" . "<br>";
	if(!unlink('testfile2.new'))
		echo "Could not delete file" . "<br>";
	else
		echo "File 'testfile2.new' successfully deleted" . "<br>";
	
	//move_uploaded_fileg更新加载的文件
?>

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值