Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/google-apps-script/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
用php删除json文件_Php_Json - Fatal编程技术网

用php删除json文件

用php删除json文件,php,json,Php,Json,我正在生成的文件夹中编写一个json文件。一小时后,我想自动删除文件夹及其内容。 我试过: 我得到一个权限错误 也许有人知道我为什么会出现这个错误rmdir()删除目录如果你想删除文件,那么你应该使用unlink()函数 正确的aporach应该是使用directoryinterator或glob()循环文件,然后删除它们,然后删除空目录 您还可以使用exec()或shell\u exec()调用系统命令rm-rf direcory\u name 有用链接: 我在php.net上发现了

我正在生成的文件夹中编写一个json文件。一小时后,我想自动删除文件夹及其内容。 我试过:

我得到一个权限错误

也许有人知道我为什么会出现这个错误

rmdir()
删除目录如果你想删除文件,那么你应该使用
unlink()
函数

正确的aporach应该是使用
directoryinterator
glob()
循环文件,然后删除它们,然后删除空目录

您还可以使用
exec()
shell\u exec()调用系统命令
rm-rf direcory\u name

有用链接:

我在php.net上发现了一个非常有用的函数,可以删除隐藏的文件

 public function delTree($dir) { 
    $files = array_diff(scandir($dir), array('.','..')); 

    foreach ($files as $file) { 
      (is_dir("$dir/$file")) ? delTree("$dir/$file") : unlink("$dir/$file"); 
    } 

    return rmdir($dir); 
  }
rmdir()
删除目录如果要删除文件,则应使用
unlink()
函数

正确的aporach应该是使用
directoryinterator
glob()
循环文件,然后删除它们,然后删除空目录

您还可以使用
exec()
shell\u exec()调用系统命令
rm-rf direcory\u name

有用链接:

我在php.net上发现了一个非常有用的函数,可以删除隐藏的文件

 public function delTree($dir) { 
    $files = array_diff(scandir($dir), array('.','..')); 

    foreach ($files as $file) { 
      (is_dir("$dir/$file")) ? delTree("$dir/$file") : unlink("$dir/$file"); 
    } 

    return rmdir($dir); 
  }

当涉及到类似的事情时,使用本机O/s删除目录要容易得多,因此您不必编写一个可怕的循环,它可能会有一些您可能错过的边缘情况,然后最终删除您不应该拥有的内容

$path = 'your/path/here';

if (PHP_OS !== 'WINDOWS')
{
    exec(sprintf('rm -rf %s', $path));
}
else
{
    exec(sprintf('rd /s /q %s', $path));
}
当然,根据您的需要定制上述内容。如果希望避免函数调用的开销(无论如何,在这种情况下可以忽略不计),也可以使用。使用
$path
变量可能也是一个好主意

对于单班轮:

exec(sprintf((PHP_OS === 'WINDOWS') ? 'rd /s /q %s' : 'rm -rf %s', escape_shell_arg($path)));

不管怎样,有时让选择的O/s执行文件操作更容易。

当遇到类似的情况时,使用本机O/s删除目录更容易,因此您不必编写一个可怕的循环,它可能会有一些您可能错过的边缘情况,然后删除您不应该拥有的内容

$path = 'your/path/here';

if (PHP_OS !== 'WINDOWS')
{
    exec(sprintf('rm -rf %s', $path));
}
else
{
    exec(sprintf('rd /s /q %s', $path));
}
当然,根据您的需要定制上述内容。如果希望避免函数调用的开销(无论如何,在这种情况下可以忽略不计),也可以使用。使用
$path
变量可能也是一个好主意

对于单班轮:

exec(sprintf((PHP_OS === 'WINDOWS') ? 'rd /s /q %s' : 'rm -rf %s', escape_shell_arg($path)));

无论如何,有时让所选的O/s执行文件操作更容易。

我想删除文件夹及其内容谢谢,这确实很有帮助,但不知怎的,是文件()不会在我的.json文件上启动-因此我想我唯一的选择是如果该文件具有正确的chmods,则使用system commandscheck。我想删除包含其内容的文件夹。谢谢,这非常有用,但不知怎的,is_file()不会在我的.json文件上启动-因此,如果该文件具有正确的chmods,我想我唯一的选择是使用system commandscheck