“随机”我并不是指使用随机函数随机选择要打开的文件。不,不,不,不,不。我的意思是我想打开一个特定的文件然后通过相对记录号读取特定记录,而不是按顺序读取文件。有些人使用术语“直接阅读”而不是“随机阅读”。
$handle = fopen ('data.dat', 'r');
$key = 42; // read the 42nd record
$buffer = fgets ($handle, $key, 100);
fclose ($handle);
或者也许是这样,这是在某些版本的Pascal中完成的方式:
$handle = fopen ('data.dat', 'r');
$record_length = 100; // each record on the file is 100 bytes long
$key = 42; // I want to read the 42nd record
$file_pointer = ($record_length * $key) - $record_length;
$buffer = fgets ($handle, $file_pointer, 100);
fclose ($handle);