PHP Filesystem 函数

使用 Filesystem 函数能够访问和操作文件系统。

file_exists()

file_exists() 函数检查文件或目录是否存在。如果指定的文件或目录存在则返回 TRUE,否则返回 FALSE。

					
/*
 * path: 必需,规定要检查的路径。
 */
file_exists(path)
					
				

mkdir()

mkdir() 函数创建目录。如果成功该函数返回 TRUE,如果失败则返回 FALSE。

					
/*
 * path: 必需,指定要创建的目录的名称。
 * mode: 可选,指定权限。默认是 0777(允许全局访问)。
 */
mkdir(path, mode, recursive, context)
					
				

删除空目录 rmdir()

使用 rmdir() 函数来 删除 指定的 空目录。

					
/*
 * 使用 rmdir() 函数删除指定目录时,这个目录必须是 空 的,而且要有相应的 权限。
 *
 *  $dirname: 要删除的目录路径。
 *  $context: 可选参数,用来规定文件句柄的环境。
 *    return: 函数执行成功时返回 TRUE,执行失败则返回 FALSE,如果删除一个不为 空 的目录还会产生一个 E_WERNING 级别的错误。
 *            Warning: rmdir(xxx): Directory not empty in xxx
 */
rmdir(string $dirname[, resource $context])
					
				
					
<?php
  $dir = './test';
  if(is_dir($dir)){
    if(rmdir($dir)) echo '目录删除成功!';
  } else {
    echo "目录不存在!";
  }
 ?>
					
				

删除文件 unlink()

使用 unlink() 函数删除指定的文件,函数执行成功时返回 TRUE,失败时返回 FALSE。

					
/*
 * $filename: 要删除的文件路径。
 *  $context: 可选参数,规定文件句柄的环境。
 */
unlink(string $filename[, resource $context])
					
				
					
<?php
  $file_name = 'newtest.txt';
  if(file_exists($file_name)) {
    if(unlink($file)) {
      echo $file.' 删除成功!';
    } else {
      echo $file.' 删除失败!';
    }
  } else {
    echo $file.' 不存在!';
  }
 ?>
					
				

删除一个不为空的目录,可以遍历这个目录下的所有 文件 和 文件夹,并用递归的方式来逐个删除这个目录下的所有文件和文件夹。

					
<?php
function deldir($path){
	  //如果是目录则继续
	  if(is_dir($path)){
	  //扫描一个文件夹内的所有文件夹和文件并返回数组
	  $p = scandir($path);
	  //如果 $p 中有两个以上的元素则说明当前 $path 不为空
	  if(count($p)>2){
	    foreach($p as $val){
	      //排除目录中的.和..
	      if($val !="." && $val !="..") {
	        //如果是目录则递归子目录,继续操作
	        if(is_dir($path.$val)){
	          //子目录中操作删除文件夹和文件
	          deldir($path.$val.'/');
	        } else {
	          //如果是文件直接删除
	          unlink($path.$val);
	        }
	      }
	    }
	  }
	}
	//删除目录
	return rmdir($path);
}
//设置需要删除的文件夹
$path = "./test/";
//调用函数,传入路径
deldir($path);
?>
					
				

file_get_contents()

file_get_contents() 函数用于把文件的内容读入到一个字符串中的首选方法。如果服务器操作系统支持,还会使用内存映射技术来增强性能。

					
/*
 * file_get_contents() 函数将文件内容读取为字符串。
 *           string $filename: 必需。规定要读取的文件名或 URL。
 * bool $include_path = false: 可选。如果启用,设置该参数为 '1',在 include_path 中搜索文件。
 *          resource $context: 可选。规定文件句柄的环境。context 是一套可以修改流的行为的选项。若使用 NULL,则忽略。
 *            int $offset = 0: 可选。规定读取文件内容的起始位置。该参数是 PHP 5.1 中新增的。
 *                int $maxlen: 可选。规定读取的字节数。该参数是 PHP 5.1 中新增的。
 */
string file_get_contents(string $filename, bool $include_path = false, resource $context, int $offset = 0, int $maxlen)
					
				

说明:

例:PHP 获取 POST 请求传递过来的 JSON 数据。

					
<?
  $postData = file_get_contents('php://input');
 ?>