很多网站都喜欢在页面中加个一言,不过一般都是调用的第三方api。其实,使用万能的php能用短短的几行代码就实现该功能!

将下列代码复制并粘贴到 api.php 中保存,你的专属“一言” API 就搭建完成了!超简单是不是……

// 存储数据的文件

$filename = 'data.dat';

// 指定页面编码

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;

如何在静态页面中引用

上面的代码都是直接在页面中就输出了随机的句子。如果想像一言那样在静态的网页中引用这个 api,该如何实现呢?

很简单,将最后那一行的 echo $result; 换成

echo 'document.write("'.htmlspecialchars($result).'");';

然后在需要的位置用引入 js 的方式进行调用即可。

示例代码:

附:data.dat文件下载。点我下载

本文版权所属孟坤博客,转载请注明出处。

php采集一言代码_PHP简单实现一言 / 随机一句功能相关推荐

  1. php采集一言代码_php抓取一言数据

    本来我博客的一言,都是来自https://github.com/kokororin/hitokoto/blob/master/hitokoto.json的,400多条的样子. 刚刚自己有点不满足这些了 ...

  2. php采集一言代码_用PHP制作api源码简单实现一言 / 随机一句功能

    很多人都喜欢在自己的网站页面中加个一言,不过一般都是调用的第三方api.其实,使用phpfile_get_contents 函数就能通过短短的几行代码就实现该功能! 准备工作 首先准备一个代码编辑器, ...

  3. php 记事本源代码_PHP简单实现一言 / 随机一句功能

    首先准备一个代码编辑器,然后新建一个 php 文件,命名为 api.php,再新建一个文件,命名为 data.dat(两个文件均需采用 UTF-8 编码,否则会乱码). 打开 data.dat,在里面 ...

  4. PHP简单实现一言 / 随机一句功能

    很多网站都喜欢在页面中加个一言,不过一般都是调用的第三方api.其实,使用万能的php能用短短的几行代码就实现该功能! 将下列代码复制并粘贴到 api.php 中保存,你的专属"一言&quo ...

  5. php制作简单的用户登陆,如何用php代码实现简单的用户登陆以及登陆验证功能

    本文主要简单讲述了如何使用php实现简单的用户登陆以及登陆验证效果. 1.首先实现通过Session实现用户的登录 那么什么是session呢? session被译为会话,它主要是为了在一定访问期间在 ...

  6. php采集一言代码_【PHP】简单的一言API源码

    Loading... **前言:** 通过调用文本任一一行的句子,实现简单的一言api,无后台返回数据,只需把文字写到api.txt中供其调用. **源码:** ```php //获取句子文件的绝对路 ...

  7. javascript 代码_如何使您JavaScript代码保持简单并提高其可读性

    javascript 代码 by Leonardo Lima 莱昂纳多·利马(Leonardo Lima) 如何使您JavaScript代码保持简单并提高其可读性 (How to keep your ...

  8. php怎么读取图片并输出,php读取图片内容并输出到浏览器的实现代码_PHP教程

    代码很简单,网上都能找到,但在我机子上就是显示不出来,显示出的一直是这个php文件路径, 费了点时间才搞定,原来是我的 网上查了下,有这样一说:如果php以图片,zip,exe等文件输出到浏览器,而前 ...

  9. 网页制作使用CSS样式制作轮播教程,静态网页设计与开发 1.案例——CSS3制作图片轮播图 (4)使用纯CSS3代码实现简单的图片轮播——分步骤实现.docx...

    使用纯CSS3代码实现简单的图片轮播 设计思路: 以5张图片为例: 1.基本布局: 通过设置每张图片的尺寸和父容器的尺寸,从而将5张图片横向并排放入一个div容器(#photos)内.所有图片设置统一 ...

最新文章

  1. 易观于揚:数据分析是人工智能的基础构件
  2. 深入剖析Java即时编译器(上)
  3. 协程、asyncio、异步编程
  4. 具有SmartFilterBar 的 SAP Fiori Elements 自动触发的搜索操作
  5. STM32的串口通信
  6. GridView实战一:自定义分页、排序、修改、插入、删除
  7. 阿里云 OSS 如何设置防盗链, 上个月图床流量耗费50G+,请求次数10W+,什么鬼?
  8. 【渝粤教育】国家开放大学2018年秋季 0273-21T中国现代文学 参考试题
  9. 16进制储存的农历信息的正确打开方式
  10. linux环境编程apue和unp,UNIX高级环境编程:源码(apue)下载 编译和运行
  11. 鼠标键盘录制工具 脚本录制器 游戏脚本录制工具
  12. Ali-tomcat之HSF框架Demo启动报错HSFServiceAddressNotFoundException
  13. webpack 图片压缩
  14. Annotation-specified bean name conflicts with existing
  15. 【HUSTOJ】1049: 字符图形5-星号梯形
  16. 【渝粤教育】电大中专中药炮制学作业 题库
  17. 限制性立方样条(Restricted Cubic Spline)
  18. Installation Installing SDKMAN
  19. ASWEET项目实施日志
  20. 达梦数据库实例服务无法启动(一)

热门文章

  1. chrome浏览器,调试详解,调试js、调试php、调试ajax
  2. D-hdu 1465 不容易系列之一(递推)
  3. IE下常见兼容性问题记录汇总(04-持续更新)
  4. [置顶]       设计模式之六大原则——单一职责原则(SRP)
  5. Apriori算法进行关联分析(2)
  6. WebBrowser(IE) 与 JS 相互调用
  7. 汽车之家店铺数据抓取 DotnetSpider实战
  8. SVN Files 的值“ .mine”无效。路径中具有非法字符。
  9. redis根据通配符去批量删除指令
  10. python算法与数据结构-快速排序算法(36)