fopen、fwrite、fprint、fread 和 fclose 命令可用于处理文件。
必须先使用 fopen 函数打开文件,然后才能读取或写入文件。
fopen 提取两个字符串参数:
如果将“+”字符添加到模式字符,Maya 会打开文件进行读/写。
如果省略此参数,默认进行读取。
fopen 返回文件控制柄。文件控制柄表示打开文件。应此值保存到变量中,以便能够使用 fprint 等其他命令处理打开的文件。
$fileId = fopen($exampleFileName,"r");
一旦打开文件进行读取,就可以使用以下某个命令从文件读取数据:
目的 | 使用该命令 |
---|---|
读取一行(读取到下一个新行)。 |
fgetline (fileID) |
读取字词(读取到下一个空格)。 |
fgetword (fileID) |
读取单个值。 |
fread (fileID,类型) |
例如:
// Read a file one line at a time $fileId=fopen($exampleFileName,"r"); string $nextLine = `fgetline $fileId`; while ( size( $nextLine ) > 0 ) { print ( $nextLine ); $nextLine = `fgetline $fileId`; }
如果处在文件末尾,feof <fileID> 函数将返回非零值。
string $nextWord = `fgetword $fileId`; while ( !feof($fileId) ) { print ( $nextWord + "\n" ); $nextWord = fgetword($fileId); }
如果打开一个空文件,feof 在至少执行一个读取之前,不会检测到它在文件的末尾。
一旦打开文件进行写入或附加操作,便可以使用以下某个命令向文件写入数据:
例如:
$fileId = fopen($exampleFileName,"w"); fprint($fileId,"Hello there\n"); fclose($fileId);
fwrite 命令将二进制格式的数据参数写入文件。它将字符串作为 ASCII 写入,结尾带一个 NULL 字符。不应使用 fwrite 来写入文本文件或编写原始字节,除非结尾需要一个 NULL 字符。
若要关闭打开文件,请使用 fclose (fileID)。