PHP file函数
一、判断函数
is_file($filename) //判断是否文件
is_link($filename) //判断是否为链接符号
is_dir($filename) //判断是否为路径
is_readable($filename)//判断文件是否存在并且可读
is_writable($filename)//判断文件是否存在并且可写
is_executable($filename)//判断文件是否存在且可执行
二、增删
touch($filename,$m_time=time(),$v_time=time()) //创建文件,修改时间,访问时间。文件不存在则创建
mkdir($path,0777,true) //创建目录,true位创建多级
copy($source,$dest)//将文件复制到$dest
unlink($filename)//删除文件
rmdir($dirname)//删除目录
三、读写
$fp = fopen($filename,$mode) //打开文件或url
feof($fp)//测试文件指针是否到了文件结束的位置
flock($fp,$operation)//LOCK_SH共享锁,LOCK_EX排他锁,LOCK_UN释放锁。
fwrite($fp,$content)//写入,别名fputs()
fread($fp,$length)//读取$length个字节
fgets($fp,$length)//从文件指针中读取一行,$length-1个字节
fgetss($fp)//从文件指针中读取一行并过滤掉HTML标记
fgetc($fp)//读取一个字符(字节)
fclose($fp);//关闭一个已打开的文件指针
$str = file_get_contents($filename,)//将整个文件读入一个字符串
file_put_contents($filename,$contents)//将一个字符串写入文件
$arr = file($filename)//将整个文件读入一个数组
四、指针
fseek($fp,$offset)//将文件指针移动到$offset处
rewind($fp)//将文件指针置于开头,等价于fseek($fp,0)
五、文件信息
fileatime($filename)//取得文件上次的访问时间
filemtime($filename)//取得文件的修改时间
filectime($filename)//取得文件的 inode 修改时间
fileinode($filename)//取的文件的 inode
filegroup($fileanme)//取得文件的组
fileowner($filename)//取得文件的所有者
fileperms($fileanme)//取得文件的权限
filesize($filename) //取得文件的大小
filetype($filename) //取得文件类型,fifo,char,dir,block,link,file 和 unknown
六、权限
chgrp($filename,$group)//$group组名或组ID
chmod($filename,$mode)//改文件权限
chown($filename,$user)//改变文件的所有者
七、解析路径
basename($path)//返回路径中的文件名部分
echo "1) ".basename("/etc/sudoers.d", ".d").PHP_EOL;
echo "2) ".basename("/etc/passwd").PHP_EOL;
echo "3) ".basename("/etc/").PHP_EOL;
echo "4) ".basename("/etc///").PHP_EOL;
echo "5) ".basename("//etc/").PHP_EOL;
echo "6) ".basename("/etc/.").PHP_EOL;
echo "7) ".basename(".").PHP_EOL;
echo "8) ".basename("..").PHP_EOL;
echo "9) ".basename("/");
1) sudoers
2) passwd
3) etc
4) etc
5) etc
6) .
7) .
8) ..
9)
下面这个自定义函数可以解释basename()的行为
function my_basename($path,$suffix=''){
$path_arr = explode("/",$path);
foreach ($path_arr as $key => $value) {
if($value==''){
unset($arr[$key]);
}
}
$arr_length = count($path_arr);
$path_last = $path_arr[$arr_length-1];
if(isset($path_last)){
$filename = strrev($path_last);
if(strpos($filename,$suffix)===0){
return strrev(substr($filename,strlen($suffix)));
}else{
return strrev($filename);
}
}else{
return '';
}
} pathinfo($filename)//返回文件路径的信息
print_r(pathinfo("/etc///ss/s..txt//")); 输出: Array
(
[dirname] => /etc///ss
[basename] => s..txt
[extension] => txt
[filename] => s.
)
PHP file函数的更多相关文章
- php使用file函数、fseek函数读取大文件效率分析
php读取大文件可以使用file函数和fseek函数,但是二者之间效率可能存在差异,本文章向大家介绍php file函数与fseek函数实现大文件读取效率对比分析,需要的朋友可以参考一下. 1. 直接 ...
- PHP 文件读取 fread、fgets、fgetc、file_get_contents 与 file 函数
fread().fgets().fgetc().file_get_contents() 与 file() 函数用于从文件中读取内容. fread() fread() 函数用于读取文件(可安全用于二进制 ...
- PHP文件操作,多行句子的读取,file()函数,file_get_contents()函数,file_put_contents()函数,is_file,统计网站pv (访问量),文件的复制 copy,文件重命名 rename,删除文件 unlink
php中添加utf-8: header("Content-type:text/html;charset='UTF-8'"); 文件操作步骤: 1.在同一目录下建立一个file.tx ...
- PHP Zip File 函数
通过 PHP 中的相关函数,你可以实现 zip 文件的解压缩操作! PHP Zip File 简介 Zip File 函数允许您读取压缩文件. 安装 如需在服务器上运行 Zip File 函数,必须安 ...
- PHP读取文件函数fread,fgets,fgetc,file_get_contents和file函数的使用总结
fread().fgets().fgetc().file_get_contents() 与 file() 函数用于从文件中读取内容. 1.fread() fread()函数用于读取文件(可安全用于二进 ...
- Python file() 函数
描述 file() 函数用于创建一个 file 对象,它有一个别名叫 open(),更形象一些,它们是内置函数.参数是以字符串的形式传递的.每组词 www.cgewang.com 更多文件操作可参考: ...
- $file函数
引用:http://www.jb51.net/article/26508.htm 如: 复制代码代码如下: <form enctype="multipart/form-data&quo ...
- php file()函数
file() — 把整个文件读入一个数组中 使用使用方法: file(filename,[$flags]); 可选参数 flags 可以是以下一个或多个常量: FILE_USE_INCLUDE_PAT ...
- python的文件操作file:(内置函数,如seek、truncate函数)
file打开文件有两种方式,函数用file()或者open().打开后读入文件的内容用read()函数,其读入是从文件当前指针位置开始,所以需要控制指针位置用: 一.先介绍下file读入的控制函数: ...
随机推荐
- How jQuery UI Works
https://learn.jquery.com/jquery-ui/how-jquery-ui-works/ jQuery UI contains many widgets that maintai ...
- SSH port forwarding: bind: Cannot assign requested address
https://www.electricmonk.nl/log/2014/09/24/ssh-port-forwarding-bind-cannot-assign-requested-address/
- python - Tkinter 模块 - python 自带的gui模块
Tkinter模块("Tk 接口")是Python的标准Tk GUI工具包的接口,位Python的内置模块,直接import tkinter即可使用. 1.创建窗口 from Tk ...
- Katalon Studio学习笔记(三)——chromedriver与当前chrome版本不符,如何替换
首先下载chrome版本对应的chromedriver.exe文件,然后找到katalon如下图所示文件夹中,替换chromedriver.exe重新启动katalon即可. 最新适配chrome 7 ...
- 数据库之DML
1.表的有关操作: 1.1.表的创建格式: CREATE TABLE IF NOT EXISTS 表名(属性1 类型,属性2 类型,....,属性n 类型):# 标记部分表示可以省略 1.2.表的修改 ...
- 【读书笔记】GitHub入门
代码管理方式--集中与分散 集中型 以 Subversion 为代表的集中型,所示将仓库集中存放在服务器之中,所以只存在一个仓库.这就是为什么这种版本管理系统会被称作集中型. 集中型将所有数据集中存放 ...
- maven spark Scala idea搭建maven项目的 pom.xml文件配置
1.pom.xml文件配置,直接上代码. <?xml version="1.0" encoding="UTF-8"?> <project xm ...
- 【Linux开发】OpenCV在ARM-linux上的移植过程遇到的问题4---共享库中嵌套库带路径【已解决】
[Linux开发]OpenCV在ARM-linux上的移植过程遇到的问题4-共享库中嵌套库带路径[已解决] 标签:[Linux开发] 紧接着上一篇,我居然又尝试了一下编译opencv,主要是因为由于交 ...
- python 并发编程 多进程 Process对象的其他属性方法 terminate与is_alive name pid 函数
进程对象的其他方法一: terminate与is_alive is_alive() 立刻查看的子进程结果 是否存活 from multiprocessing import Process impor ...
- Linux如何设置在当前目录下打开终端
转:https://blog.csdn.net/iot_flower/article/details/71189816 1. sudo apt-get install nautilus-open-te ...