1. 用PHP获取文件指定行或者随机行
<?php
/***
* 功能: 随机获取一个文件里的某一行
* 实现: 先将文件读进一个数组; 随机获取0~数组长度-1之间的一个随机数;以这个随机数做索引取出数组中的项返回
* @parm $fileName 文件名
* @parm $rnum 需要获取的行号
*/
header('content-Type: text/html; charset=utf-8');
function getOneLine($fileName, $rnum){
if(!file_exists($fileName)){
echo "文件不存在!";
die(0);
}else{
$fileArr = file($fileName);//file — 把整个文件读入一个数组中
if(!isset($rnum)){
//不提供行号,随机获取
$len = count($fileArr);
$value = $fileArr[rarray_rand($len -1)];
$rvalue = trim($value);//trim — 去除字符串首尾处的空白字符(或者其他字符)
return $rvalue;
}else{
//提供行号,获取该行
$fileArr = file($fileName);
$value = $fileArr[$rnum];
$rvalue = trim($value);
return $value;
}
}
} /*获取 0 ~ $len之间的随机数*/
function rarray_rand($len){
//mt_rand — 生成更好的随机数
return mt_rand(0, $len);
} $keyword = getOneLine("key.txt", NUll);
var_dump($keyword);
2. fgets和fputs、fread和fwrite、fscanf和fprintf