Ubuntu 下安装 MySQL

代码老兵 技术 2026年3月5日 40
一、更新系统sudo apt updatesudo apt upgrade -y二、安装 MySQLUbuntu 官方源默认提供的是 MySQL 8.xsudo apt install mysql-server -y安装完成后检查版本:mysql --version三、检查服务状态sudo systemctl status mysql如果没启动:sudo systemctl start mysql...

MySQL EXPLAIN 结果解读

代码老兵 技术 2026年3月5日 39
在 MySQL 中,EXPLAIN 用来查看 SQL 查询执行计划,帮助你判断查询是否使用索引、扫描了多少行、连接方式如何等,是 SQL 性能优化最重要的工具之一。基本用法:EXPLAIN SELECT * FROM users WHERE id = 10;返回一个表格,每一列都有特定含义。下面是常见字段的解读。一、EXPLAIN 输出字段说明典型结果:idselect_typetabletype...

MySQL 里只查看指定用户的连接 / 线程

代码老兵 技术 2026年3月5日 32
方式一:information_schema.PROCESSLIST这是官方、可过滤、最灵活的方式:SELECT *FROM information_schema.PROCESSLISTWHERE USER = 'your_user';例如:SELECT *FROM information_schema.PROCESSLISTWHERE USER = 'app_user';也可以只看正在执行的 S...

从master分支移除已合并的test分支全部代码

代码老兵 技术 2026年3月5日 32
test 分支已经合并到 master 中,并且有可能是多次合并。如果你需要从 master 分支中彻底移除已经多次合并进去的 test 分支代码,推荐的方法是使用 git revert。由于 master通常是公共分支,使用 git revert 可以保留历史记录的完整性,而不会像 reset 那样破坏其他开发者的本地仓库。以下是详细的操作步骤:核心策略:倒序撤销 因为进行了多次合并,所以提交历...

HTMLPurifier HTML标签属性预定义类型

代码老兵 技术 2026年3月5日 32
HTMLPurifier 会对html标签中的属性进行检查,对不符合要求的属性过滤,例如$def->addAttribute('img', 'src', 'URI'); $def->addAttribute('img', 'alt', 'Text'); $def->addAttribute('img', 'height', 'Length'); $def->addAttri...

HTMLPurifier 让 p 标签可以包含 video, audio 等标签

代码老兵 技术 2026年3月5日 36
默认情况下HTMLPurifier 会将 <p><video>...</video></p>转换为:<p></p><video>...</video>这样,<video> 被移到了 <p> 标签外HTML Purifier 的默认定义更偏旧(主要围绕 HTML 4.01 / XH...

详解 HTMLPurifier addElement 方法

代码老兵 技术 2026年3月5日 28
HTMLPurifier 中的 addElement 方法允许你 自定义 HTML 元素的定义,即指定某个元素可以包含哪些其他元素,定义元素的类型、属性等。这对于修改 HTMLPurifier 默认行为非常有用。1. addElement 方法概述addElement 方法允许你在 HTMLPurifier 配置中添加或修改特定元素的 标签定义。通过 addElement,你可以自定义 HTML...

PHP Aho-Corasick 算法同时匹配多个关键字

代码老兵 技术 2026年3月3日 40
一、传统做法(循环匹配)最常见写法:foreach ($keywords as $word) { if (mb_strpos($text, $word) !== false) { // 命中 }}假设:关键词数量:M文章长度:N时间复杂度接近:O(M × N)如果:文章 10KB关键词 5000 个那就是:5000 × 10000 = 5000万次字符比较而且还要重复扫描文本。二、Aho-Cora...

Z-Blog 发布文章时添加额外字段

代码老兵 技术 2026年3月2日 33
目标效果在后台:文章编辑页↓标题↓【新增一个下拉框】 文章类型: ▼ 原创 转载 翻译并且保存到数据库。一、创建插件(或在已有插件修改)目录:/zb_users/plugin/postselect/ include.php三、include.php<?phpRegisterPlugin("postselect","ActivePlugin_postselect");function Acti...

Z-Blog 事件(Hook)设置指南

代码老兵 技术 2026年3月2日 32
一、Z-Blog 事件机制原理Z-BlogPHP 的 Hook 本质是:$zbp->AddFilter('事件名', '函数名');或者Add_Filter_Plugin('事件名', '函数名');然后系统在指定位置:foreach ($GLOBALS['Filter_Plugin_XXX'] as $fpname => &$fpsignal) { $fpname();}二、...