今天照着书上敲代码,用fileatime()函数时,出现提示:fileatime(): stat failed ,打印了一下 参数的值,是一个具体的文件名(或文件夹名),即传进的是一个绝对路径。因为,在使用 fileatime() 函数前,对参数作了 取 basename() 的处理。如下:
这样打印出来的 fileatime($file)是没有内容的,因为 filetime找不到具体文件。
ps:是在Window xp 系统上出现这个情况的,书中的代码是在Unix下的,这个应该跟路径平台没关系, $file=basename($file); 后面还有一行注释“ strip off directory information for security ” (为了安全,剔除路径信息) ,这让人比较不能理解,编程时一个需要不断敲代码练习的过程,尽信书不如无书,的确如此。
今还有一问题,需要注意一下:
在上述代码中用到一个函数 posix_getpwuid() ,执行的过程中,报错:Fatal error: Call to undefined function posix_getpwuid()
查了一下,原因是:Window XP不支持这个函数,(fileowner()、filegroup() 函数Window平台下也不支持。)
查了一下POSIX的相关情况:
POSIX 表示可移植操作系统接口(Portable Operating System Interface )