人生只有三天,活在昨天的人迷惑;活在明天的人等待;活在今天的人最踏实。你永远无法预测意外和明天哪个来得更早,所以,我们能做的,就是尽最大的努力过好今天。请记住:今天永远是昨天死去的人所期待的明天。

file_put_contents写入文件

我们先来学习第一种写入文件的方式:

int file_put_contents ( string 文件路径,string" role="presentation" style="position: relative;">文件路径,string文件路径,string写入数据])

功能:向指定的文件当中写入一个字符串,如果文件 不存在则创建 文件。返回的是写入的 字节长度

  1. <?php
  2. $data = "胖先生,很宅!";
  3. $numbytes = file_put_contents('D:/pang.ini', $data);
  4. echo '写入的长度:'.$numbytes;
  5. if($numbytes){
  6. echo '写入成功,我们读取看看结果试试:';
  7. echo file_get_contents('D:/pang.ini');
  8. }else{
  9. echo '写入失败或者没有权限,注意检查';
  10. }
  11. ?>

!

我们发现写入文件也挺简单的。按照这个函数的格式,指定文件,写入字符串数据就可以了。

fwrite配合fopen进行写入操作

int fwrite ( resource 文件资源变量,string" role="presentation" style="position: relative;">文件资源变量,string文件资源变量,string写入的字符串 [, int 长度])

注:fwrite的别名函数是 fputs

读取的时候使用,接下来我们用fwrite加上fopen中的w,写入模式来进行文件写入。

我们来看一下特点:

写入方式打开,将文件指针指向文件头并将文件大小截为零。如果文件不存在则尝试创建。

注意:在下面的实验中,你可以试试新建个 pangsir.txt文件向里面写入内容.

  1. <?php
  2. $filename = 'D:/pangsir.txt';
  3. $fp= fopen($filename, "w");
  4. $len = fwrite($fp, '我是一只来自南方的狼,一直在寻找心中的花姑娘');
  5. fclose($fp);
  6. print $len .'字节被写入了\n';
  7. ?>

运行结果:

总结:

1.不论有没有新建都会打开文件 重新写入

2.原有的文件内容会被覆盖掉

3.文件不存在会创建

那我们来对比一下以下几个模式的不同:

模式 说明
r 只能读不能使用fwrite写
r+ 可操作读、写
w 只可以写功能
w+ 即可读又可以写

我们来通过实验证明一下:

  1. <?php
  2. $filename = 'D:/test.txt';
  3. $fp= fopen($filename, "r+");
  4. $len = fwrite($fp, '我是一只来自南方的狼,一直在寻找心中的花姑娘');
  5. fclose($fp);
  6. print $len .'字节被写入了\n';
  7. ?>

实验时可以把r后面的+号去掉。

我们通过实验,确实发现使用r模式,在文件存在的时候可以进行写入数据,只用r的话,写入是不成功的。

a模式和w模式的不同

同样是下面的这段代码,我们改为a模式。

  1. <?php
  2. $filename = 'D:/test.txt';
  3. $fp= fopen($filename, "a");
  4. $len = fwrite($fp,'读大学迷茫了,人总是要靠自己的');
  5. echo $len .'字节被写入了\n';
  6. ?>

打开网页执行这段代码,你会发现:每刷新一次,文件中就会多一段

:读大学迷茫了,人总是要靠自己的。

总结:

模式 总结
w 每次写入会干掉原有文件的内容,文件不存在都会创建
a 每次写入都会向文件的尾端追加内容

注:a+ 是增强的追加功能。可以读取时也可以使用。

x模式和w模式的不同

这段代码我们再实验一次,改为x模式:

  1. <?php
  2. $filename = 'D:/test.txt';
  3. $fp= fopen($filename, "x");
  4. $len = fwrite($fp,'读大学迷茫了,人总是要靠自己的');
  5. echo $len .'字节被写入了\n';
  6. ?>

我们会发现:

  1. 文件存在的时候会报错
  2. 如果把$filename 改成其他的文件名,就可以了。但是,再次刷新的时候又报错了
  3. x+ 是增强的x模式。读取时也可以使用。

重命名文件

bool rename(旧名," role="presentation" style="position: relative;">旧名,旧名,新名);

功能:这个函数返回一个bool值,将旧的名字改为新的名字。

  1. <?php
  2. //旧文件名
  3. $filename = 'D:/pangsir.txt';
  4. //新文件名
  5. $filename2 = $filename . '.old';
  6. //复制文件
  7. rename($filename, $filename2);
  8. ?>

我们打开目录,我们可以看看效果,你会发现把指定的文件,复制了一份到了目标路径。

复制文件

复制文件,就相当于是克隆技术,将一个原来的东西再克隆成一个新的东西。两个长得一模一样。

bool copy(源文件,目标文件)

功能:将指定路径的源文件,复制一份到目标文件的位置。

  1. <?php
  2. //旧文件名
  3. $filename = 'D:/pangsir.txt';
  4. //新文件名
  5. $filename2 = $filename . '_new';
  6. //修改名字。
  7. copy($filename, $filename2);
  8. ?>

总结:

你会通过上面的例子,发现多出来了一个文件。

删除文件

删除文件就是将指定路径的一个文件删除,不过这个删除是直接删除。使用的是windows电脑,你在回收站看不到这个文件。

你只会发现,这个文件消失了。

bool unlink(指定路径的文件)

  1. <?php
  2. $filename = 'd:/test.txt';
  3. if (unlink($filename)) {
  4. echo "删除文件成功 $filename!\n";
  5. } else {
  6. echo "删除 $filename 失败!\n";
  7. }
  8. ?>

前端PHP入门-029-文件操作-掌握级别的更多相关文章

  1. 前端PHP入门-028-文件操作-掌握级别

    作为刚入门我们员经常会干的意见事情是ctrl+c和ctrl+v,鼠标右键删除文件.会control+c(或右键)复制.粘贴文件以及新建文件,还可以设置文件的是否为只读文件等等 可不可以写入修改配置文件 ...

  2. Python入门篇-文件操作

    Python入门篇-文件操作 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.文件IO常用操作 open:打开 read:读取 write:写入 close:关闭 readlin ...

  3. 前端学PHP之文件操作

    × 目录 [1]文件类型 [2]文件属性 [3]目录路径[4]目录遍历[5]目录统计[6]目录增删[7]目录复制[8]文件操作[9]文件内容 前面的话 在程序运行时,程序本身和数据一般都存在内存中,当 ...

  4. 前端学PHP之文件操作(认真读读)

    前面的话 在程序运行时,程序本身和数据一般都存在内存中,当程序运行结束后,存放在内存中的数据被释放.如果需要长期保存程序运行所需的原始数据,或程序运行产生的结果,就需要把数据存储在文件或数据库.一般地 ...

  5. 前端PHP入门-032-异常处理-应用级别

    禁止显示错误 在php.ini配置文件中.我们可以控制php的错误显示状态. php.ini中有一个专门的配置项: display_errors 这个选项设置是否将错误信息输出到网页,或者对用户隐藏而 ...

  6. Androlid入门之文件系统操作(三)文件读写

         import java.io.*; import android.app.Activity; import android.os.Bundle; import android.view.Vi ...

  7. 003-Tuple、Array、Map与文件操作入门实战

    003-Tuple.Array.Map与文件操作入门实战 Tuple 各个元素可以类型不同 注意索引的方式 下标从1开始 灵活 Array 注意for循环的until用法 数组的索引方式 上面的for ...

  8. Python学习入门基础教程(learning Python)--5.6 Python读文件操作高级

    前文5.2节和5.4节分别就Python下读文件操作做了基础性讲述和提升性介绍,但是仍有些问题,比如在5.4节里涉及到一个多次读文件的问题,实际上我们还没有完全阐述完毕,下面这个图片的问题在哪呢? 问 ...

  9. Python 入门基础6 --字符编码、文件操作1

    今日内容: 1.字符编码 2.字符与字节 3.文件操作 一.字符编码 了解: cpu:将数据渲染给用户 内存:临时存放数据,断电消失 硬盘:永久存放数据,断电后不消失 1.1 什么是编码? 人类能够识 ...

随机推荐

  1. kafka可靠性

    文章转载自: http://blog.csdn.net/u013256816/article/details/71091774

  2. 常用的os操作方法

    os.sep可以取代操作系统特定的路径分隔符.windows下为 “”os.name字符串指示你正在使用的平台.比如对于Windows,它是'nt',而对于Linux/Unix用户,它是'posix' ...

  3. 通过Nrgok映射外网调试微信

    一.注册账号 注册地址:http://www.ngrok.cc/login 登录系统,新增域名 二.下载客户端,修改配置文件 修改ngrok.cfg auth_token值登录平台管理系统可查看 su ...

  4. scrum立会报告+燃尽图(第三周第二次)

    此作业要求参见:https://edu.cnblogs.com/campus/nenu/2018fall/homework/2284 项目地址:https://coding.net/u/wuyy694 ...

  5. java 抽象类&接口

    1,抽象类中有构造函数吗? 有,用于给子类对象进行初始化.   2,抽象关键字不可以和那些关键字共存? private 不行 static 不行 final 不行   final关键字: 1,fina ...

  6. openssl 基本加密

    openssl命令行工具详解(openssl的命令众多,请酌情处理与记忆) 在命令行输入:openssl asdf,可以显示openssl的命令说明   1:Standard commands(标准命 ...

  7. [2017BUAA软工]第三次博客作业:案例分析

    第三次博客作业:案例分析 1. 调研和评测 1.1 BUG及设计缺陷描述 主要测试博客园在手机端上的使用情况. [BUG 01] 不能后退到上一界面(IOS) 重现步骤:打开博客首页中任意博文,点击博 ...

  8. PHP用抛物线的模型实现微信红包生成算法的程序源码

    <?php /* *Author:Kermit *Time:2015-8-26 *Note:红包生成随机算法 */ header("Content-type:text/html;cha ...

  9. 【Nginx】均衡负载权重模式实现session数据同步

    思路:把session存放到一个公共redis服务器上 每次浏览器请求服务端都会带上cookie,因为使用的是权重负载均衡方案,因此nginx反向代理服务器会把请求发放到不同的服务端,服务端用cook ...

  10. jdbc 小结

    1,PreparedStatement/Statement区别: 1,防止sql注入式攻击(sql注入:就是通过非正常手段(比如在url中添加参数)),将sql文执行(比如or 1=1) 2,Prep ...