php 用unlink函数权限判断删除文件示例

PHP删除文件用unlink函数权限判断感兴趣的小伙伴,下面一起跟随编程之家 jb51.cc的小编两巴掌来看看吧!
unlink函数PHP中就是删除文件的,但我们可以通过判断文件是否有删除权限,下面我来给大家简单介绍一下unlink函数用法与权限判断。 unlink($file) 例1

/**
 * PHP删除文件用unlink函数权限判断
 *
 * @param 
 * @arrange 512-笔记网: 512Pic.com
 **/
<?PHP
unlink($somefile)
or die(Cannot delete file.)

/***   来自编程之家 jb51.cc(jb51.cc)   ***/
有时会出现权限问题,对文件有写权限,但是无法删除。 原因很简单,删除文件不是对文件修改,而是修改目录,需要对文件所在目录有写权 判断文件是否具备读权限应用的是is_readable()函数,判断文件是否具备写权限应用的是is_writable()函数

is_readable()函数,判断指定文件是否可读,语法如下:
bool is_readable(string filename) 如果文件存在并且可读则返回TRUE。

is_writable()函数,判断指定文件是否可写,语法如下:
bool is_writable(string filename) 如果文件存在并且可写则返回TRUE。参数filename可以是一个允许进行是否可写检查的目录名。

注意:PHP也许只能以运行webserver的用户名(通常为'nobody')来访问文件。不计入安全模式的限制。对文件权限的判断,是对文件进行操作的前提,特别是在执行文件的读取、写入、重命名等操作时,如果文件不具备备读、写的权限,那么这些操作是没有任何意义的。

设计过程
(1)创建index.PHP文件
(2)添加表单,设置文本框,提交指定文件,设置文件域,提交写入文件中的数据,设置提交按钮,使用POST方法,将数据提交到本页。
(3)通过$_POST[]方法获取表单提交的文件路径和文件内容,并通过iconv()函数获取的数据进行编码转换。首先,判断指定的文件是否存在。然后,判断指定的文件是否具备写的权限,如果具备,则将表单提交的文件内容写入到文件中。最后,关闭打开的文件,给出提示信息。

index.PHP的关键代码如下:

/**
 * PHP删除文件用unlink函数权限判断
 *
 * @param 
 * @arrange 512-笔记网: 512Pic.com
 **/
<?PHP
if($_POST['file_name']!=&& is_file(iconv(utf-8,gb2312,$_POST['file_name']))==true){ //判断文件是否存在
$file_name=iconv(utf-8,$_POST['file_name']); //编码转换
if(file_exists($file_name)){
if(is_writable($file_name)){ //判断文件是否具备写的权限
$fp=fopen($file_name,w+); //打开指定的文件
if(fwrite($fp,$file_content)){ //执行写入的操作
echo<script>alert('文件写入成功!');</script>;
}else{
echo<script>alert('文件写入失败!');</script>;
}
fclose($fp); //关闭文件
}else if(is_readable($file_name)){ //判断文件是否具备读的权限
echo<script>alert('文件只具备读权限!');</script>;
}else{
echo<script>alert('文件不具备读、写权限!');</script>;
}
}else{
echo<script>alert('文件不存在!');</script>;
}
}else{
echo<script>alert('请输入正确的文件路径!');</script>;
}
?>
/***   来自编程之家 jb51.cc(jb51.cc)   ***/

相关文章

统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
前言 之前做了微信登录,所以总结一下微信授权登录并获取用户...
FastAdmin是我第一个接触的后台管理系统框架。FastAdmin是一...
之前公司需要一个内部的通讯软件,就叫我做一个。通讯软件嘛...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...