<?php
$file=fopen("test.txt","r"); //以只读方式打开test.txt
$char=fgetc($file);
echo $char;
?>
file_get_contents()函数无需经过打开文件及关闭文件操作就可以读取文件中的全部内容。语法为:file_get_contents(string filename)
<?    $str=file_get_contents('test.txt');
echo nl2br($str);
?>

file()函数将读取整个文件并将其保存到一个数组中,数组中每个数组元素对应文档中的一行,该函数可用于读取二进制文件。

<?    $arr=file("test.txt");            //读取文件到数组中
print_r($arr);
?>

文本文件的写入和追加

fwrite()函数,将一个字符串写入到文本文件中,

fwrite(resource handle, string string[,int length]);

<?php   $fp=fopen("new.txt","a");        // a 以追加方式打开new.txt
fwrite($fp,'这是写入的一行话\n');
fwrite($fp,'最多写入12个字符\n',);
fclose($fp); //关闭文件资源
?>

结果为:  这是写入的一行话\n最多写入12个字符\n

1.制作计数器:

<?php   $fp=fopen("count.txt","r+");     //先读后写操作
$Visitors=intval(fgets($fp)); //读取文件中的内容
$Visitors++; //将计数器加1
rewind($fp); //将文件指针指向开头,以便重新写
fwrite($fp,$Visitors); //将计数器值写入count.txt文件之中
fclose($fp);
?>
<html><body>
<h2>欢迎进入PHP的世界</h2><hr>
您是本站第<?=$Visitors ?>位贵宾。
</body></html>

2.对计数器设置防刷新功能

可以通过SESSION变量判断是否是同一用户在重复刷新网页

<?php
/*
*
* @Authors peng--jun
* @Email 1098325951@qq.com
* @Date 2015-11-09 18:06:08
* @Link http://www.cnblogs.com/xs-yqz/
* @version $Id$
==========================================
*/
header("Content-type: text/html; charset=UTF-8");
session_start();
$fp = fopen("count.txt", "r+");
$Visitors=intval(fgets($fp));//读取原有访问次数
if (!$_SESSION['connected']) {
$Visitors++; //将访问次数加1
$_SESSION['connected'] = true;
}
rewind($fp);
fwrite($fp, $Visitors); 将新的访问次数写回文件
fclose($fp);
?>
<p>您是本站第<?=$Visitors ?>位贵宾。</p>

文件及目录的基本操作

<?php
if(copy('test.txt','./data/bak.txt')) //复制文件示例
echo '文件复制成功';
else echo '文件复制失败,源文件可能不存在';
//删除文件示例
unlink('./test.txt'); //删除当前文件夹下的test.txt
//移动文件示例
if(file_exists('./data/bak.txt')){ //判断源文件是否存在
if(rename('./data/bak.txt','tang.txt')) //移动并重命名为tang.txt
echo '文件移动并重命名成功';
else echo '文件移动失败';
}
?>

PHP文件访问技术的更多相关文章

  1. ADO.NET数据访问技术

    ADO.NET数据访问技术 就是将C#和MSSQLl连接起来的纽带 可以通过ADO.NET将内存中的临时数据写入到数据库中,也可以将数据库中的数据提取到内存中供程序调用.是所有数据访问技术的基础. A ...

  2. C#与数据库访问技术总结(十八)

    ADO.NET 代码综合示例 前面已经介绍过OLE DB.NET和SQL Server.NET数据提供者可以用来连接不同的数据源. 以下代码不仅综合演示了使用ADO.NET的这两种数据提供者访问数据库 ...

  3. [翻译]比较ADO.NET中的不同数据访问技术(Performance Comparison:Data Access Techniques)

    Performance Comparison: Data Access Techniques Priya DhawanMicrosoft Developer Network January 2002 ...

  4. 挑战以Dropbox为代表的传统“同步网盘”,Seafile推出“分布式文件同步技术”打造的私有云服务

    挑战以Dropbox为代表的传统“同步网盘”,Seafile推出“分布式文件同步技术”打造的私有云服务#36氪开放日# 其他 JasonZheng • 2012-04-07 15:14 来自36氪开放 ...

  5. Seafile 推出 “分布式文件同步技术” 打造的私有云服务

    近两年来 Dropbox 等云储存服务迅速窜红,各大巨头纷纷推出自家的云储存服务(苹果的 iCloud, 微软的 SkyDrive, Google 即将推出的 GDrive),国内也有类似的服务(金山 ...

  6. Windows平台内核级文件访问

    1.背景     在windows平台下,应用程序通常使用API函数来进行文件访问,创建,打开,读写文件.从kernel32的CreateFile/ReadFile/WriteFile函数,到本地系统 ...

  7. NodeJS静态文件访问性能测试

    受益于JavaScript语言优秀特点,使NodeJS开发服务端应用很方便,配合NPM官方提供的大量第三方组件,让NodeJS更加如虎添翼.最近,需要使用NodeJS做一个服务端HTML5的游戏服务器 ...

  8. Java笔记(十二) 文件基础技术

    文件基础技术 一.文件概述 一)基本概念 1.文件的分类: 1)文本文件:文件中每个二进制字节都是某个可打印字符的一部分.如.java文件 2)二进制文件:文件中每个二进制字节不一定用来表示字符,也可 ...

  9. atitit.网络文件访问协议.unc smb nfs ftp http的区别

    atitit.网络文件访问协议.unc smb nfs ftp http的区别 1. 网络文件访问协议1 2. NETBios协议  2 3. SMB(Server Message Block)2 3 ...

随机推荐

  1. javascript 高级程序设计学习笔记(面向对象的程序设计) 2

    在调用构造函数时会为实例添加一个指向最初原型的指针,我们可以随时为原型添加属性和方法,并且能在实例中体现出来,但如果是重新了原型对象,那就会切断构造函数与最初原型的联系. function Dog ( ...

  2. E - Number Sequence(第二季水)

    Description A single positive integer i is given. Write a program to find the digit located in the p ...

  3. [STOI2014]舞伴(dp)

    STOI是汕头OI...无聊翻到了去年的比赛题目,就写然后自己测了一下. 其实我很想吐槽为什么题目名是perm,perm好像和舞伴完全无关.. dp(x,s)=∑dp(x-1,s-{i}))(0< ...

  4. 理解中WebAPI的属性和相关操作 FormBody和 FormUri等(WebAPI 二)

    1.FromUri使用 将数据通过url方式传递.我们需要在webapi方法标明,这个参数只接受url中参数的值, $("#Save").click(function () { $ ...

  5. Oracle RETURNING INTO 用法示例 .

    The RETURNING INTO clause allows us to return column values for rows affected by DML statements. The ...

  6. 测试框架mochajs详解

    测试框架mochajs详解 章节目录 关于单元测试的想法 mocha单元测试框架简介 安装mocha 一个简单的例子 mocha支持的断言模块 同步代码测试 异步代码测试 promise代码测试 不建 ...

  7. web安全测试工具介绍---webscarab

    webscarab: 这主要是一款代理软件或许没有其它的工具能和OWASP的WebScarab如此丰富的功能相媲美了,如果非要列举一些有用的模块的话,那么他们包括HTTP代理,网络爬行.网络蜘蛛,会话 ...

  8. js里面“===”与“==”的区别

    首先,== equality 等同,=== identity 恒等. ==, 两边值类型不同的时候,要先进行类型转换,再比较. ==,不做类型转换,类型不同的一定不等.  下面分别说明: 先说 === ...

  9. Matalab之模糊KMeans实现

    这节继续上节的KMeans进行介绍,上节主要是对模糊KMeans方法的原理做了介绍,没有实践印象总是不深刻,前段时间有个师姐让我帮着写了个模糊KMeans的算法,今天就拿她给出的例子来对这个方法做个实 ...

  10. Oracle10g安装中遇到的错误及解决办法

    linux解决xhost: unable to open display实用技巧:在Linux下设置xhost方法步骤 第一步:用root登陆linux,启动vnc服务:第二步:根据vnc起来的端口, ...