很多網站都喜歡在頁面中加個一言,不過一般都是調用的第三方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文件下載。點我下載
本文版權所屬孟坤博客,轉載請注明出處。