搜 索

搭建自定义一言Hitokoto

  • 605阅读
  • 2021年12月30日
  • 2评论
首页 / 技术教程 / 正文

一言简介

一言网hitokoto.cn创立于 2016 年,隶属于萌创团队,目前网站主要提供一句话服务。简单来说,一言指的就是一句话,可以是动漫中的台词,也可以是网络上的各种小段子。 或是感动,或是开心,有或是单纯的回忆。来到这里,留下你所喜欢的那一句句话,与大家分享,这就是一言存在的目的。

我的想法

看到一些网站使用了一言接口,感觉挺不错的,自己也想整一个关于情话的每日一言,在网上参考别人的制作过程,有了大概的了解,然后就开始折腾

部署接口

我的步骤:先在网站根目录创建hitokoto文件夹,文件夹中再分别创建hitokoto.txt和index.php文件。

hitokoto.txt自行编辑,一句话一行,index.php代码如下:

<?php
$path = dirname(__FILE__);
$file = file($path."/hitokoto.txt");

//随机读取一行
$arr  = mt_rand( 0, count( $file ) - 1 );
$content  = trim($file[$arr]);

//编码判断,用于输出相应的响应头部编码
if (isset($_GET['charset']) && !empty($_GET['charset'])) {
    $charset = $_GET['charset'];
    if (strcasecmp($charset,"gbk") == 0 ) {
        $content = mb_convert_encoding($content,'gbk', 'utf-8');
    }
} else {
    $charset = 'utf-8';
}
header("Content-Type: text/html; charset=$charset");

//格式化判断,输出js或纯文本
if ($_GET['format'] === 'js') {
    echo "function hitokoto(){document.write('" . $content ."');}";
} else {
    echo $content;
}
?>

现在访问 https://填写域名/hitokoto/ 就可以看到输出内容了

调用接口

将下面代码添加到你想显示一言的位置即可

<script type="text/javascript" src="https://填写域名/hitokoto/?format=js&charset=utf-8"></script> <div id="hitokoto"><script>hitokoto()</script></div>

部署完成之后,前台刷新就可以看到效果了,每次刷新都会随机展示一句话。如果想添加句子,只需要编辑 hitokoto.txt 即可。
效果展示:https://api.fd31.cn/hitokoto/

打 赏
  • 支付宝
  • 微信
  • QQ
Alipay
WeChatPay
QQPay
评论区
世谕 2021年12月30日 17:46
回复

加个样式,一个简单的单页就出来了!

Nanndy
1 条回复
Nanndy
Nanndy 2021年12月30日 17:48
回复

说得对

avatar