php函数随机读取txt文本中的一行成熟版

<?php
header('content-type:text/html;charset=utf-8');
function getline($file){
if(file_exists($file)) {    //判断文件是否存在
    $data = file($file); // 打开文件
    $num = count($data); //计算总行数
  if(empty($num)) {   //是否为0行
    echo 'txt empty';  
    exit(0);  
  }  
    $id = mt_rand(0,$num-1); //随机一行
    $shuju_text = chop($data[$id]); //去除空白行
   //$i=strlen($shuju_text);//strlen() 函数返回字符串的长度
    return $shuju_text;
}else{
//die($filename . ' 数据文件不存在');    
echo 'No txt';
exit(0);
}
}
$rndtxt=getline(getcwd() . '/1.txt');
$rndtxt=mb_convert_encoding($rndtxt,'UTF-8','GB2312');//转换中文
echo $rndtxt;
?>

测试办法 随机UserAgent输出(浏览一次随机输出一个)

随机UserAgent API:http://api.98lm.com/ua.php

办法2

<?php
// 存储数据的文件
$filename = 'ua.txt';        
 
// 指定页面编码
header('Content-type: text/html; charset=utf-8');
 
if(!file_exists($filename)) {
    die($filename . ' 数据文件不存在');
}
 
// 读取整个数据文件
$data = file_get_contents($filename);
 
// 按换行符分割成数组
$data = explode(PHP_EOL, $data);
 
// 随机获取一行索引
$result = $data[array_rand($data)];
 
// 去除多余的换行符(保险起见)
$result = str_replace(array("\r","\n","\r\n"), '', $result);
 
echo $result;

 

赞 (0)