LMLPHP后院

如何让MySQL支持utf8mb4字符

就像我前面文章提到的,我一直很想亲自试试 utf8mb4 字符集,这个支持 emoji 的字符集到底是有什么样的魔力。下面讲述了实现的方式。前提条件是 MySQL5.5 版本之后才可以支持,目前新买的 VPS,新装的系统一般都是支持的。修改 /etc/my.cnf,如下配置:[client] default-character-set = utf8mb4 [mysql] default-charact...

LMLJS之代码高亮插件highlight发布

蛮拼的,像前面说的,就是花了好多时间,最后虽然有一点点毛病,但是依然在可以接受的范围之内。 在写的时候,留下了可以配置的部分,颜色对应正则和颜色对应关键词,两种配置的区别在于,第一种是正则;第二种是纯字符串,这样字符串在最终匹配的时候是会进行转义处理的。最后发现第二种意义不大,因为我把 if,else 这样的关键词当做字符串来替换了,这样导致一个单词里面含有它们会出现部分高亮的问题,但是最终结果是对的...

VIM编辑器学习精简教程

。 向下翻半屏:ctrl+d 。(这个用的比较多) 向下翻一屏:ctrl+f 。 向上滚屏:ctrl+e 。(很好用,光标保持不动,如果没有触碰边缘的话,适合近距离翻屏) 行内运动:f+(需要寻找的字符), ; (半角分号)键下一个,, (半角逗号)键前一个,必须在使用了 ; 键之后使用 , 键才有效。行内运动特别有用。 行内运动以单词为单位:w 下一个单词, b 上一个单词。 查找,搜索 命令行搜...

Fix Malformed UTF-8 characters, possibly incorrectly encoded

据的时候,有时候会出现 Malformed UTF-8 characters, possibly incorrectly encoded 这种错误,错误代号 5。这个问题怎么解决呢?问题的根本在于非法字符,一般情况下是不会出现的,要认真的查看代码,找出哪一步生产出了非法字符。比如字符串:/s/%D0%C5%B4%FB%D7%CA%BD%F0%C8%EB%CA%D0%B1%BB%B7%A3/ 当你使用 ...

使用PHP实现Unicode编码转换为UTF-8编码示例

先解释一些概念。Unicode 是 Universal Multiple-Octet Coded Character Set 的简写,简称为UCS。Unicode 是多个八位编组的字符编码集合,它本身只是编码规范,并没有任何实现。目前,大多数 Unicode 编码都是占用两个字节,一共可以编 65536 个字符,全世界所有的语言基本上都在里面了,至少绝大多数中文都编进去了,所以很多 json 编码的...

微信开发入门的大坑

ng $text 需要加密的明文 * @return string 加密后的密文 */ public function encrypt($text, $appid) { try { //获得16位随机字符串,填充到明文之前 $random = $this->getRandomStr(); $text = $random . pack("N", strlen($text)) . $text . $app...

PHP如何在双引号中更好的使用空格

在 PHP 程序中,如果仅仅是表示字符串,首选应该是单引号。但某些情况下,字符串里面包含一些特殊字符或者变量,这个时候很多人为了方便书写,不愿意使用单引号连接双引号的方式来写代码。于是就直接使用双引号来包裹字符串。在双引号中使用空格有个弊端,就是压缩程序不好处理,去除空格不是,不去除达不到压缩的效果。所以,在空格不多的情况下,建议使用 ascii 的方式来表达空格。如:\x20 或者 \040。再比如...

PHP trim 函数引发崩溃且数据库保存失败

请慎用 PHP 的 trim 函数来去除额外的头尾字符,否则可能带来意外的不合法字符。请看下面的例子🌰var_dump(trim('血')); var_dump(trim('血', ' ')); var_dump(preg_replace('/^ | $/', '', ' 血 ')); return; 输出string(3) "血" string(2) "?" string(3) "血" 上面的例子是...

PHP 5.5 新特性 ::class 获取类名字符

看 Laravel 的源代码,之前在 Provider 里面是直接用字符串来配置需要的服务,新版本之后,代码发生了一些变化,使用的是类名加双冒号加关键词 class 来配置需要的服务。 Laravel 更新太快,要求的版本是 PHP5.5.9 以上,但是商业气息太浓,性能太低。不得不感叹,真是一用 Laravel,就像是女星嫁入豪门从此深似海。 使用 var_dump() 打印 类名::class,...

换行符和回车符号的差别

在 Windows 系列系统中的换行包含换行(\n)和回车(\r)两个字符,而 Unix(Linux) 系列的系统中的换行只包含换行符(\n)。 要理解换行和回车两个字符的差别,从英文上更好理解。换行(\n)的英文翻译为 Line Feed,而回车(\r)的英文翻译为 Carriage Return。据说这个是跟早期的打印机有关系的,早期的打印机的换行其实就是进纸,打印机将纸张通过机械的力量转入,形...
2021-03-09 12:44:38 1615265078 0.032661