<?php

$path = "/home/work/srccode/hello.go";
$dirName = dirname($path);
$name = basename($path); echo $dirName;
echo "\n";
echo $name; //获取文件的信息,如dirname、basename、filename、extension
$pathInfo = pathinfo($path); var_dump($pathInfo); //获取文件类型,如dir、file等
$fileType = filetype($path); var_dump(filetype($dirName));
var_dump($fileType);
//fopen($fileName, $mode)的文件打开方式:
/*
r 只读方式打开
r+ 读写方式打开,文件指针在文件开头,不清空文件内容,新写入的内容覆盖之前的内容,存在新内容与老内容共存情况
w 写入方式打开,清空文件内容,文件不存在则尝试创建
w+ 读写方式打开,清空文件内容,文件不存在则尝试创建
a 写入方式打开,文件指针在文件末尾,文件不存在则尝试创建
a+ 读写方式打开,文件指针在文件末尾,文件不存在则尝试创建
*/
$f = fopen($path, "r");
//$fileInfo = fstat($f);
$fileInfo = stat($path);
var_dump($fileInfo); //文件大小
$fileSize = filesize($path);
var_dump($fileSize); //将文件内容每行作为一个元素读入数组
$fileContent = file($path);
var_dump($fileContent); //文件所有内容以字符串形式读出来
$fileContent = file_get_contents($path);
var_dump($fileContent);
//fgets默认读取1k字节,如果遇到了换行、EOF或者读取了length-1个字节返回
$length = 2048;
$oneLine = fgets($f, $length);
var_dump($oneLine);
//功能类似于fgets,不过会过尝试滤掉PHP和HTML标记。函数定义fgetss(filename, length, tags)
$newf = fopen("/home/work/srccode/test.html", "r");
var_dump($newf);
echo "---------"; $newOneLine = fgetss($newf, 10000, "<html>");
var_dump($newOneLine);
echo "+++++++++++++"; //判断是否文件结束
//feof($f); //打开一个目录句柄
$handler = opendir($dirName);
//需要先打开目录句柄,readdir()每次从目录句柄中读取目录中一个内容
while($dirContent = readdir($handler)){
var_dump($dirContent);
}
closedir($handler); //读取目录下的所有文件,以数组形式升序返回
$dirContents = scandir($dirName);
var_dump($dirContents);
$dirContents = scandir($dirName, 1);
var_dump($dirContents); //判断路径是否是目录
$isDir = is_dir($dirName);
var_dump($isDir);
$isDir = is_dir($path);
var_dump($isDir);
//判断是否是文件
$isFile = is_file($dirName. "/link1");
var_dump($isFile); //判断文件属性是否可读
$isReadable = is_readable($path);
var_dump($isReadable); //检测文件或目录是否存在
$fileExists = file_exists($path);
var_dump($fileExists);
$fileExists = file_exists($dirName);
var_dump($fileExists);
fclose($f);
//将文件指针定位到某个位置,SEEK_SET使用offset作为新位置,SEEK_CUR使用当前位置加offset作为新位置
//SEEK_END使用文件尾加offset作为新位置,offset需要是负值才能定位到文件内容
$offset = 0;
$seekRes = fseek($f, $offset+10, SEEK_END);
$readRes = fread($f, 10);
var_dump($readRes);
//删除文件
$fileName = "test";
//unlink删除文件,结果是bool类型
$unlinkRes = unlink($fileName);
var_dump($unlinkRes); //倒回文件开始的地方,结果是bool类型,如果是a或者a+方式打开,不起作用,总是写在末尾
$rewindRes = rewind($f); //file_put_contents函数默认情况将内容写入文件中,之前的内容被删除
//$mode = FILE_APPEND可以避免删除文件的内容,成功写入返回写入的字节数,失败false
$writeByteSize = file_put_contents("filename", "this is data");
var_dump($writeByteSize);

  

//将文件指针定位到某个位置,SEEK_SET使用offset作为新位置,SEEK_CUR使用当前位置加offset作为新位置//SEEK_END使用文件尾加offset作为新位置,offset需要是负值才能定位到文件内容$offset = 0;$seekRes = fseek($f, $offset+10, SEEK_END);$readRes = fread($f, 10);var_dump($readRes);//删除文件$fileName = "test";//unlink删除文件,结果是bool类型$unlinkRes = unlink($fileName);var_dump($unlinkRes);
//倒回文件开始的地方,结果是bool类型,如果是a或者a+方式打开,不起作用,总是写在末尾$rewindRes = rewind($f);
//file_put_contents函数默认情况将内容写入文件中,之前的内容被删除//$mode = FILE_APPEND可以避免删除文件的内容,成功写入返回写入的字节数,失败false$writeByteSize = file_put_contents("filename", "this is data");var_dump($writeByteSize);

PHP常用文件操作的更多相关文章

  1. python 历险记(三)— python 的常用文件操作

    目录 前言 文件 什么是文件? 如何在 python 中打开文件? python 文件对象有哪些属性? 如何读文件? read() readline() 如何写文件? 如何操作文件和目录? 强大的 o ...

  2. Python之常用文件操作

    Python之常用文件操作

  3. Unix/Linux常用文件操作

    Unix/Linux常用文件操作 秘籍:man命令是Unix/Linux中最常用的命令,因为命令行命令过多,我相信每个人都会经常忘记某些命令的用法,man命令就可以显示一个命令的所有选项,参数和说明, ...

  4. 真香!Python十大常用文件操作,轻松办公

    日常对于批量处理文件的需求非常多,用Python写脚本可以非常方便地实现,但在这过程中难免会和文件打交道,第一次做会有很多文件的操作无从下手,只能找度娘. 本篇文章整理了10个Python中最常用到的 ...

  5. Java常用文件操作-2

    上篇文章记录了常用的文件操作,这里记录下通过SSH服务器操作Linux服务器的指定路径下的文件. 这里用到了第三方jar包 jsch-0.1.53.jar, jsch-api 1.删除服务器上指定路径 ...

  6. 【阅读笔记】《C程序员 从校园到职场》第六章 常用文件操作函数 (Part 1)

    参考链接:https://blog.csdn.net/zhouzhaoxiong1227/article/details/24926023 让你提前认识软件开发(18):C语言中常用的文件操作函数总结 ...

  7. 文件操作(FILE)与常用文件操作函数

    文件 1.文件基本概念 C程序把文件分为ASCII文件和二进制文件,ASCII文件又称文本文件,二进制文件和文本文件(也称ASCII码文件)二进制文件中,数值型数据是以二进制形式存储的, 而在文本文件 ...

  8. Java常用文件操作-1

    在我们的实际工作中经常会用到的文件操作,再此,将工作中碰到的做一个记录,以便日后查看. 1.复制文件夹到新文件夹下 /** * 复制文件夹下所有文件到指定路径 *@param oldPath *@pa ...

  9. C#File类常用文件操作以及一个模拟的控制台文件管理系统

    重温一下C#中File类的一些基本操作: File类,是一个静态类,主要是来提供一些函数库用的. 使用时需要引入System.IO命名空间. 一.常用操作: 1.创建文件方法 //参数1:要创建的文件 ...

  10. 常用文件操作 分类: C# 2014-10-14 16:18 108人阅读 评论(0) 收藏

    界面图: using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; ...

随机推荐

  1. jquery-tmpl 插件

    做项目时页面上有处功能是:在页面有处列表.有添加,我添加修改或删除后要刷新这个列表,首先想到的是局部刷新,但我们一般说的局部刷新就是利于ajax去后台调用数据并显示,而这里是一整个列表就比较麻烦了,刷 ...

  2. 度度熊想去商场买一顶帽子,商场里有N顶帽子,有些帽子的价格可能相同。度度熊想买一顶价格第三便宜的帽子,问第三便宜的帽子价格是多少?

    var data=[10,25,50,10,20,80,30,30,40,90]; function fun(arr,index){ var min=Math.min.apply(this,arr); ...

  3. tomcat异常 Socket bind failed: [730048]

    tomcat从官网站点下载时须注意版本信息: zip格式为window压缩版. tar.gz为linux安装板. installer为window安装板. 解压后的各文件功能与作用: bin:用于放置 ...

  4. c# 用户输入一个字符串,求字符串的长度

    C#  用户输入一个字符串,求字符串的长度使用字符串的length: class Program { static void Main(string[] args) { Console.WriteLi ...

  5. java 实验3 继承+多态

    实验3  继承与多态 **类可以实现多个接口 但只有单继承!** 1.继承 1).继承语法  class 子类名 extends 父类{    } 2).构造函数(通过source即可得到) 注意: ...

  6. 趣图:当我捕获Bug的时候

      趣图:当我以为已捕获了所有可能的异常...的时候 趣图:程序员调 Bug 的感觉,就是这样的

  7. “全栈2019”Java第二十九章:数组详解(中篇)

    难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第 ...

  8. 利用Crawlspider爬取腾讯招聘数据(全站,深度)

    需求: 使用crawlSpider(全站)进行数据爬取 - 首页: 岗位名称,岗位类别 - 详情页:岗位职责 - 持久化存储 代码: 爬虫文件: from scrapy.linkextractors ...

  9. [Swift实际操作]八、实用进阶-(6)通过属性进行对象间的消息传递

    本文将演示,如何通过一个对象作为另一个对象的属性,从而通过设置属性的值,来实现对象之间的消息传递.首先打开自定义视图的代码文件(CustomView.swift) import UIKit //使当前 ...

  10. 如何保证一个textfield输入最长的文字

    NSString *lang = [self.inputTextField.textInputMode primaryLanguage]; // 键盘输入模式 if ([lang isEqualToS ...