Heim >php教程 >php手册 >一个较为安全的覆写文件函数

一个较为安全的覆写文件函数

WBOY
WBOYOriginal
2016-06-21 09:07:071035Durchsuche

安全|函数

// 安全覆盖文件写入,防止写入失败文件丢失,如果您的代码中有以"w"模式写入文件的代码
// 推荐改用 f_xwrite() 的方式写入.
// $Id: f_xwrite.php,v 1.2 2004/12/03 05:27:04 hightman Exp $

function f_xwrite($fpath, $buf, $length = -1) {
    $ret = 0;
   
    if ($length     if ($length == 0) {
        @unlink($fpath);
         return 1;
    }
   
    $fd = @fopen($fpath, "r+");
    if (!$fd) $fd = @fopen($fpath, "w");
    if (!$fd) return $ret;

    flock($fd, LOCK_EX);
    fseek($fd, 0, SEEK_SET);
    if (fwrite($fd, $buf, $length)) {
        ftruncate($fd, $length);
        $ret = 1;
    }
    flock($fd, LOCK_UN);
    fclose($fd);
    return $ret;
}
?>



Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Vorheriger Artikel:几个常见的PHP 数据库问题Nächster Artikel:UTF8下的中文PHP编程