摘要: <?php /** * 任意长度的16进制转10进制 * @param string $hex_str * @return string */ function hexToDec($hex_str) { $hex_str = trim($hex_str); $bin_str = ""; for ($ 阅读全文
posted @ 2023-10-31 08:45 雨泣的世界 阅读(6) 评论(0) 推荐(0) 编辑
摘要: 现象 原因 组合变音字符大量叠加让其越界显示,周围的字符就会被遮盖 解决方案 将组合变音字符(U+0300-U+036F,U+0489,U+0E47)替换成□ $content = preg_replace('/([\x{0300}-\x{036F}]|\x{0489}|\x{0E47})/u', 阅读全文
posted @ 2021-10-20 17:21 雨泣的世界 阅读(76) 评论(0) 推荐(0) 编辑
摘要: 身份证号码格式校验用的是mod11-2算法 <?php /** * 校验身份证号码格式是否正确 * @param string $idcard * @return bool */ function checkIdcard($idcard) { $idcard = strtoupper($idcard 阅读全文
posted @ 2021-10-20 16:32 雨泣的世界 阅读(873) 评论(0) 推荐(0) 编辑
摘要: 在一堆数据中按分数值由大到小取前N个数据,用小根堆的方法来实现,具体代码如下: <?php class TopN extends SplMinHeap { private $top_n; /** * @param int $top_n 前top_n名 */ public function __con 阅读全文
posted @ 2020-07-02 16:41 雨泣的世界 阅读(295) 评论(0) 推荐(0) 编辑
摘要: 能高效地匹配字符串,具体原理就不搬了,这边给出PHP的实现代码: <?php class AcAutomation { private $root; public function __construct($keywords = array()) { $this->root = $this->cre 阅读全文
posted @ 2020-06-29 12:31 雨泣的世界 阅读(410) 评论(0) 推荐(0) 编辑
摘要: 用lsblk查看分区信息 lsblk 可以看出sdb这块是未分区的 用 fdisk 对这块硬盘分区 fdisk /dev/sdb 使用 partprobe重新读取分区表 partprobe /dev/sdb 使用 mkfs 创建文件系统(格式化分区) 先用lsblk查看分区信息 可以看出,sdb下已 阅读全文
posted @ 2020-06-29 09:57 雨泣的世界 阅读(145) 评论(0) 推荐(0) 编辑
摘要: MySQL中的UTF8编码每个字符只支持最大3字节,而emoji是4个字节的,不能直接存储进去,所以,需要将emoji转换一下。 这边提供一个将4个字节的utf8编码转成&#xxxxxx;的方法: $content = preg_replace_callback('/[\x{010000}-\x{1 阅读全文
posted @ 2020-06-28 12:05 雨泣的世界 阅读(459) 评论(0) 推荐(1) 编辑
摘要: /** * 多个关键词列表高亮(word_list1,color1,word_list2,color2,...) * @param word_list 关键词列表(例: ["关键词a","关键词b"],不区分大小写) * @param color 颜色值(例: "#ff0000") * @retur 阅读全文
posted @ 2020-06-26 20:09 雨泣的世界 阅读(340) 评论(0) 推荐(1) 编辑
摘要: 去重 awk '!A[$0]++' a.txt 并集 awk '!A[$0]++' a.txt b.txt 差集(a-b) awk 'NR==FNR{A[$0];next}!($0 in A)' b.txt a.txt 交集 awk 'NR==FNR{A[$0];next}($0 in A)' a. 阅读全文
posted @ 2020-06-26 19:32 雨泣的世界 阅读(1082) 评论(0) 推荐(0) 编辑