Products
96SEO 2025-01-18 10:57 91
wellcm:用调机随者作s文章页作者随机调用:
原始代码:
<div class="entry-info"> 作者:<?php echo $thread['username'];?><a class="nickname"></a> <span class="dot">•</span>
<span>更新时间:<?php echo $thread['create_date_fmt'];?> </span> <span class="dot">•</span><span>阅读 <?php echo $thread['views'];?> </span>
</div>
作者部分改为以下代码,并在根目录创建authors.txt:
<?php $authorsArray = file('authors.txt'); $randomAuthor = $authorsArray[array_rand($authorsArray)];
$randomAuthor = trim($randomAuthor); echo "作者:{$randomAuthor}"; ?>
随机作者刷新就变化代码:
<div class="entry-info"> <?php $authorsArray = file('authors.txt'); $randomAuthor = $authorsArray[array_rand($authorsArray)];
$randomAuthor = trim($randomAuthor); echo "作者:{$randomAuthor}"; ?> <span class="dot">•</span>
<span>更新时间:<?php echo $thread['create_date_fmt'];?> </span> <span class="dot">•</span><span>阅读 <?php echo $thread['views'];?> </span>
</div>
随机作者刷新不变化
<div class="entry-info">
<?php
// 假设这段代码所在的页面能正确获取到 $thread 数组,且 $thread 数组包含文章相关信息,其中 ['tid'] 键对应的值为文章唯一标识
// 首先确保 $thread['tid'] 存在且是合适的数据类型(这里简单判断为数值类型,你可根据实际调整)
if (isset($thread['tid']) && is_numeric($thread['tid'])) {
// 读取作者文件,获取作者列表数组
$authorsArray = file('authors.txt');
if ($authorsArray === false) {
// 如果读取文件失败,设置一个默认作者并输出错误日志(这里简单示例输出到标准输出,实际可记录到日志文件等)
$defaultAuthor = '匿名';
error_log("无法读取authors.txt文件,使用默认作者:{$defaultAuthor}");
echo "作者:{$defaultAuthor}";
} else {
// 通过对文章ID进行crc32哈希操作,获取一个相对固定的数值,再取余来对应作者数组的索引
$index = crc32($thread['tid']) % count($authorsArray);
$fixedAuthor = $authorsArray[$index];
$fixedAuthor = trim($fixedAuthor);
echo "作者:{$fixedAuthor}";
}
} else {
// 如果 $thread['tid'] 不存在或者类型不对,设置默认作者并输出
$defaultAuthor = '匿名';
echo "作者:{$defaultAuthor}";
}
?>
<span class="dot">•</span> <span>更新时间:<?php echo $thread['create_date_fmt'];?> </span> <span class="dot">•</span>
<span>阅读 <?php echo $thread['views'];?> </span>
<!--随机作者刷新不变化结束-->
注意:切换主题会使css重置
Demand feedback