PHP开发时有时候会用到缓存文件,也就是会碰到往服务器写文件的情况。
新增一个分离的缓存目录,一般都用cache命名。
cache目录需要授权网页浏览者能够写入,一般这样处理:chmod 0777 cache。
授权后cache目录应该是可以新建文件的,但是新建的文件对应的owner=daemon,group=daemon,所有者是daemon是由httpd.conf配置决定的。
这个时候服务器上的其它的使用是无法修改此文件的,最好在文件写入成功后再调用PHP的chmod()函数修改权限。
function write_cache($name, $data) { global $_CACHE; $str = "<?php\r\n"; $str .= "\$_CACHE['" . $name . "'] = " . var_export($data, TRUE) . ";\r\n"; $str .= "?>"; $file = APPLICATION_PATH . 'cache/cache_' . $name . '.php'; writetofile($file, $str); chmod($file, 0777); $_CACHE[$name] = $data; }