phpmyadmin 不支持水平/垂直分割界面,因其ui为服务端渲染的固定流式布局,无分屏功能;所谓“垂直”实为误读,调整需通过全屏、多标签页或响应式断点实现。
phpmyadmin 本身不提供「水平/垂直分割界面」的布局切换功能 —— 它没有编辑器分屏概念,所谓“水平”“垂直”是用户对导航栏、sql 标签页、结果表格排列方式的误读。
为什么找不到「垂直分割」开关?
phpMyAdmin 的 UI 是服务端渲染的固定模板结构,左侧导航栏 + 上方操作标签页 + 主内容区(如 SQL 输入框、查询结果表)是硬编码的流式布局。它不像 PhpStorm 那样有 Split Vertically 这类客户端编辑器行为。你看到的“水平排列”其实是 HTML <div> 的默认文档流,不是可配置的分屏模式。
<ul>
<li>搜索设置项如 <code>$cfg['VerticalLayout'] 或 layout=vertical 会失败 —— 这些配置根本不存在
display: flex; flex-direction: column 只会让导航栏堆到顶部、内容区被压扁,且刷新即失效你实际想解决的可能是这三类问题
多数人问“垂直分割”,背后对应的是具体使用卡点:
-
SQL 编辑区太窄,写长语句要横向滚动 → 改用全屏模式:点击 SQL 标签页右上角的
⤢图标(或按F11进入浏览器全屏),再手动拉宽窗口 -
想同时看表结构和查询结果 → 不要依赖单页布局:新开浏览器标签页访问
/tbl_structure.php?db=xxx&table=yyy和/sql.php?db=xxx&table=yyy,用系统级窗口贴边排列(Windows Snap / macOS Magnet) - 导航菜单项太多,横向挤不下 → 这是响应式断点问题:缩小浏览器宽度会自动触发折叠菜单( hamburger icon ),无需手动“转垂直”;若始终不折叠,检查是否禁用了 CSS 媒体查询或用了非标准分辨率缩放
真要大幅改造布局?代价远超预期
官方明确不鼓励修改界面结构,所有模板文件(如 /usr/share/phpmyadmin/templates/header.tpl.php)在升级时会被覆盖。即使你硬改了 <nav></nav> 和 <main></main> 的嵌套顺序:
- 新版 phpMyAdmin(5.2+)大量依赖 AJAX 加载区块(如
div#operations_ajax),静态模板只控制骨架,JS 动态注入的内容无法通过改 tpl 控制流向 - PHP 模板中混用 HTML 和逻辑判断(如
if ($is_superuser)),随意调整 DOM 层级极易导致权限相关区块错位或丢失 - 每次升级后必须用
diff -u对比原始包,手动重打补丁;apt upgrade时若用dpkg --force-confold,你的修改直接被清空
复杂点在于:你以为在调 UI,其实是在维护一个与 phpMyAdmin 内部状态机强耦合的脆弱视图层 —— 一个 AJAX 成功回调没处理好,就可能让“垂直”布局下的操作按钮全部失活。











