文章详情
常用的一些php文件和目录操作函数
Posted on 2021-08-04 23:21:57 by 主打一个C++
一些常用的php对文件操作的函数
<?php
/*
php文件操作函数
*/
/**
* 删除文本头部和尾部的全部空白字符
* @param string $str内容
* @return string 结果
*/
function f_trim_all($str) {
return trim(preg_replace('/\s+/','', $str));
}
/**
* 获取文件内容
* @param string $file 文件路径
* @return string 文件内容
*/
function f_get_file_content($file) {
return file_get_contents($file);
}
/**
* 从一个html文件中提取第一个img标签的src属性值
*/
function f_get_img_src($file){
$content = file_get_contents($file);
preg_match('/<img.*?src="(.*?)".*?>/i', $content, $match);
if(isset($match[1])){
return $match[1];
}else{
return '';
}
}
/**
* 检测目录是否存在。否则创建目录
*/
function f_check_dir($dir){
if(!is_dir($dir)){
return mkdir($dir, 0777, true);
}
}
/**
* 文件是否存在
*/
function f_check_file($file){
return file_exists($file);
}
/**
* 检测文件是否存在。否则创建文件
*/
function f_check_file_or_write($file){
if(!file_exists($file)){
return touch($file);
}
}
/**
* 检测文件是否存在。否则创建文件并写入内容
*/
function f_check_file_write($file, $content){
if(!file_exists($file)){
return file_put_contents($file, $content);
}
}
/**
* 获取文件扩展名
*/
function f_get_file_ext($file){
return pathinfo($file, PATHINFO_EXTENSION);
}
/**
* 获取文件大小
*/
function f_get_file_size($file){
return filesize($file);
}
/**
* 获取文件创建时间
*/
function f_get_file_ctime($file){
return filectime($file);
}
/**
* 获取文件修改时间
*/
function f_get_file_mtime($file){
return filemtime($file);
}
/**
* 获取文件权限
*/
function f_get_file_perms($file){
return fileperms($file);
}
/**
* 获取文件类型
*/
function f_get_file_type($file){
return filetype($file);
}
/**
* 获取文件绝对路径
*/
function f_get_file_abspath($file){
return realpath($file);
}
/**
* 写入文件文本内容
*/
function f_write_file_content($file, $content){
return file_put_contents($file, $content);
}
/**
* 写入文件文本内容
*/
function f_write_file($file, $content){
$fp = fopen($file, 'w');
fwrite($fp, $content);
fclose($fp);
}
/**
* 删除文件
*/
function f_delete_file($file){
return unlink($file);
}
/**
* 复制文件
*/
function f_copy_file($src, $dst){
return copy($src, $dst);
}
/**
* 移动文件
*/
function f_move_file($src, $dst){
return rename($src, $dst);
}
/**
* 创建目录
*/
function f_create_dir($dir){
return mkdir($dir, 0777, true);
}
/**
* 删除目录
*/
function f_delete_dir($dir){
return rmdir($dir);
}
/**
* 获取目录下所有文件
*/
function f_get_dir_files($dir){
return scandir($dir);
}
/**
* 获取目录下所有文件(包含子目录)
*/
function f_get_dir_files_all($dir){
$files = array();
$dir_list = scandir($dir);
foreach ($dir_list as $file) {
if ($file == '.' || $file == '..') {
continue;
}
if (is_dir($dir. '/'. $file)) {
$files = array_merge($files, f_get_dir_files_all($dir. '/'. $file));
} else {
$files[] = $dir. '/'. $file;
}
}
return $files;
}
/**
* 获取目录下所有目录
*/
function f_get_dir_dirs($dir){
$dirs = array();
$dir_list = scandir($dir);
foreach ($dir_list as $file) {
if ($file == '.' || $file == '..') {
continue;
}
if (is_dir($dir. '/'. $file)) {
$dirs[] = $dir. '/'. $file;
}
}
return $dirs;
}
/**
* 获取目录大小
*/
function f_get_dir_size($dir){
$size = 0;
$dir_list = scandir($dir);
foreach ($dir_list as $file) {
if ($file == '.' || $file == '..') {
continue;
}
if (is_dir($dir. '/'. $file)) {
$size += f_get_dir_size($dir. '/'. $file);
} else {
$size += filesize($dir. '/'. $file);
}
}
return $size;
}
/**
* 获取目录创建时间
*/
function f_get_dir_ctime($dir){
return filectime($dir);
}
/**
* 获取目录修改时间
*/
function f_get_dir_mtime($dir){
return filemtime($dir);
}
/**
* 获取目录权限
*/
function f_get_dir_perms($dir){
return fileperms($dir);
}
/**
* 获取目录类型
*/
function f_get_dir_type($dir){
return filetype($dir);
}
/**
* 获取目录绝对路径
*/
function f_get_dir_abspath($dir){
return realpath($dir);
}
?>
*转载请注明出处:原文链接:https://cpp.vin/page/8.html