回首页

后一页
前一页
服务器端嵌入式脚本PHP(3)

  PHP3.0中的文件操作函数大体和C的类似,但有一些扩充,特别是除了支持对本机文件的访问外,也支持对HTTP和FTP的URL进行访问,只要把这些URL作为文件名传递给文件操作函数就可以了.
  主要的文件操作函数有:

  (1)fclose,feof,fgetc,fgets,fopen,fputs,fseek,ftell,mkdir,readlink,
  rename,rewind,rmdir,stat,unlink
  这些和C语言中的同名函数都差不多.

  (2)chgrp,chmod,chown,copy
  这些的意思也都应该容易理解:
  chgrp(文件名,组);
  chmod(文件名,模式);
  chown(文件名,用户);
  copy(源文件名,目标文件名);
  注意这些函数用的是文件名而不是fopen返回的文件号.

  (3)file_exists,fileatime,filectime,filegroup,fileinode,filemtime,
  fileowner,filesize,filetype,fileperms,fileumask,is_dir,
  is_executable,is_file,is_link,is_readable,is_writeable
  这些是文件信息函数,大多是接受一个文件名作为参数的.

  (4)fgetss
  用法:
  fgetss(文件号,最大长度);
  读取文件的一行或直到最大长度(类似于fgets),但去掉所有的
  HTML和PHP标记.

  (5)file
  用法:
  file(文件名);
  返回一个数组,每一个元素是文件中的一行.

  (6)tempnam
  用法:
  tempnam(目录名,前缀);
  返回一个临时文件名.

  (7)basename,dirname
  取得文件路径中的文件名部分和目录名部分.


  在Windows系统下,"/"和"\"都可以作为目录分割符,其他系统下只
  有"/"可以.
  所以也提一下:
  (1)dir,opendir
  用法:
  $d = dir("目录名");
  $handle = opendir("目录名");
  前者返回一个目录对象,后者返回一个目录句柄.
  前者返回的对象有handle和path两个属性,第一个就相当于opendir
  返回的句柄,第二个就是目录名本身.访问时用$d->handle和$d->path.

  (2)read,readdir;rewind,rewinddir;close,closedir;
  三组中每组的前一个是目录对象的方法,用"对象->方法()"调用,
  后一个是函数,用"函数名(目录句柄)"调用.
  read是返回目录中的下一个文件名.
  rewind是回到目录的第一个文件名.
  close是关闭目录,不再遍历.

  (3)chdir
  转换PHP的工作目录.


  PHP中的时间函数有这么些:
  (1)date
  用法:
  date(格式,〔时间〕);
  如果没有时间参数,则使用当前时间.
  格式是一个字符串,其中以下字符有特殊意义:
  U 替换成从一个起始时间(好象是1970年1月1日)以来的秒数
  Y 替换成4位的年号.
  y 替换成2位的年号.
  F 替换成月份的英文全称.
  M 替换成月份的英文简称.
  m 替换成月份数.
  z 替换成从当年1月1日以来的天数.
  d 替换成日数.
  l 替换成星期几的英文全称.
  D 替换成星期几的英文简称.
  w 替换成星期几(数字).
  H 替换成小时数(24小时制).
  h 替换成小时数(12小时制).
  i 替换成分钟数.
  s 替换成秒数.
  A 替换成"AM"或"PM".
  a 替换成"am"或"pm".
  S 替换成序数字后缀,例如:"st","nd","rd","th".
  函数返回作过了替换的格式串.

  (2)getdate(时间)
  返回一个哈希表,各下标是:
  "seconds" -- 秒数
  "minutes" -- 分数
  "hours" -- 小时数
  "mday" -- 日数
  "mon" -- 月份数
  "year" -- 年号
  "yday" -- 1月1日以来的天数
  "weekday" -- 星期几,英文全称
  "month" -- 月份,英文全名

  (3)gmdate
  与date类似,但先将时间转换成格林威治标准时.

  (4)mktime
  用法:
  mktime(小时数,分数,秒数,月,日,年);
  返回一个时间值,可用于其他函数.

  (5)time
  用法:
  time();
  返回1970年1月1日零点以来的秒数.

  (6)microtime
  用法:
  microtime();
  返回一个字符串,用空格分成两部分,后一部分相当于time()
  的返回值,前一部分是微秒数.

  (7)checkdate
  用法:
  checkdate(月,日,年);
  返回逻辑真或逻辑假.
  如果:
  〔1〕年在1900和32767之间(包括1900与32767);
  〔2〕月在1到12之间;
  〔3〕日在该月的允许日数范围内(考虑了闰年);
  则返回逻辑真.

  (8)set_time_limit
  用法:
  set_time_limit(秒数);
  规定从该句运行时起程序必须在指定秒数内运行结束,
  超时则程序出错退出.


后一页
前一页

回首页