呐 你已不再是冰冷的代码了,而是具有灵魂的人。

9月 24

刷新一下就会变哦

一言(Hitokoto/ヒトコト)api

前 言

最近中二病愈加严重 所以要收集一些中二点的话用来使用
于是本loli就把目光投向了一言这个项目里,找了下开源项目 都没有找到合适的大多数都是 nodejs的 但是我又不熟悉node.js 就在收集数据的时候 我把目光投向了@小霖的hitokoto。
但是小霖的是极简api 简介的只剩下文字 这样并不能满足(个人喜欢)我的需求 于是给予小霖的hitokoto做了修改

php源码

<?php
require_once __DIR__ . '/vendor/autoload.php';
function get_data()
{
    $db = new \Buki\Pdox([
        'host' => '127.0.0.1',
        'port' => 3306,
        'username' => 'username',
        'password' => 'password',
        'database' => 'database',
    ]);
    $num = rand(1,$db->table('hitokoto')->count('id','total_row')->get()->total_row);
    return $db->table('hitokoto')->where('id',$num)->get();
}
if (@mb_convert_case($_GET['charset'],MB_CASE_UPPER) == 'UTF-8') $charset = 'UTF-8'; else $charset = 'GBK';
if (empty($_GET['code'])) $code = 'text'; else $code = $_GET['code'];
switch ($code)
{
    case 'js':
        $str = "document.getElementById('hitokoto').innerText='" . trim(get_data()->content) . "';";
        break;
    default:
        $str = trim(get_data()->content);
        break;
}
header("Content-type: text/html; charset={$charset}");
if ($charset == 'UTF-8') echo $str; else echo mb_convert_encoding($str,$charset);
?>

修改内容

<?php
require_once __DIR__ . '/vendor/autoload.php';
function get_data()
{
    $db = new \Buki\Pdox([
        'host' => 'localhost',
        'port' => 3306,
        'username' => 'username',
        'password' => 'password',
        'database' => 'database',
    ]);
    $num = rand(1,$db->table('hitokoto')->count('num','total_row')->get()->total_row);
    return $db->table('hitokoto')->where('num',$num)->get();
}
if (@mb_convert_case($_GET['charset'],MB_CASE_UPPER) == 'GBK') 
    $charset = 'GBK'; 
else 
    $charset = 'UTF-8';
if (empty($_GET['id'])) 
    $id = 'hitokoto'; 
else 
    $id = $_GET['id'];

if (empty($_GET['code'])) $code = 'text'; 
else $code = $_GET['code'];
switch ($code)
{

    case 'js':
        $str = "document.getElementById('$id').innerText='『" . trim(get_data()->text) . "』-「" . trim(get_data()->source) . "」';";
        break;
    default:
        $str = " 『" . trim(get_data()->text) . "』-「" . trim(get_data()->source) . "」";
        break;
}
header("Content-type: text/html; charset={$charset}");
if ($charset == 'UTF-8') echo $str; else echo mb_convert_encoding($str,$charset);
?>

这里我对数据表的字段进行了修改

原数据库结构

create table hitokoto
(
  id      int auto_increment
    primary key,
  content longtext        null,
  score   float default '2.5' null,
  author  text            null,
  origin  text            null
);

数据结构修改

我将数据表的 id content 字段修改成了numtext 并并且新增作者source字段
并且适应了@毛与向日葵的一言数据库。
和新增了js id

使用方式

数据获取

请求地址:https://api.ohyhello.com/hitokoto
请求方式:GET
使用文档https://api.ohyhello.com/hitokoto.html

实例 js

js调用源码

<p id="hitokotoss"></p>
<script type="text/javascript" src="https://api.ohyhello.com/hitokoto/?code=js&id=hitokotoss"></script>

#依赖

composer require izniburak/pdox

数据库下载

阅读全文 >>

8月 29

这几天在家里摸了不少鱼但是博客也是要更新的,对博客做了些小改动。

在主题里面加入了 markdown
升级了dplayer 和aplayer
更换了代码高亮

markdown

用了这么久github 才知道 wp原来支持markdown但是对第三方主题兼容的不太好引入markdown需要手动重写css 花了点时间 改了css
在github上找了个github一个开源的markdown css @jwsky’s markdowncss 更改了一番 使wp支持上了markdown
markdown写文章能使结构清晰 重点突出 还可以绘图等等还算是不错的!

更新了博客的播放器

以前博客的播放器一直用的插件 考虑到主题的开源 我在主题里面集成了 (更新)
博客的多媒体 音乐用aplayer播放 视频用dplayer播放

引用实例

aplayer


dpalyer

代码高亮

代码高亮呢用的prismjs 操作很简单 引入css js即可
下面是演示

html

<html>
    <body>
        <p>这是html的代码高亮</p>
    </body>
</html>



prismjs支持很多种语言 c html css js等等

#完结&相关链接
dplayer http://dplayer.js.org/#/
aplayer https://aplayer.js.org/#/
prismjs http://www.prismjs.com/
视频出自 https://www.youtube.com/watch?v=CcrAbFLBpCM

阅读全文 >>