You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PHP中如何按每6行分割字符串生成单服务器信息数组

PHP按6行一组拆分服务器信息字符串实现方案

核心实现思路

不要通过匹配-分隔线做拆分标记(字段内容可能包含-会导致拆分错误),直接按固定行数切分即可,步骤如下:

  • 先统一原始字符串的换行符,兼容Windows、Linux、旧Mac系统的不同换行规则,避免行数统计错误
  • 将字符串按换行符拆分为逐行组成的索引数组,过滤多余空行,重置连续索引
  • 用PHP内置函数按每6个元素为一组切分数组,每组对应单台服务器的完整文本
  • 按需对分组结果做二次处理,比如移除每组末尾的分隔线、拼接为字符串格式等

可直接运行的代码示例

<?php
// 传入你的原始服务器信息字符串即可
$rawContent = "你的原始多服务器信息字符串";

// 统一换行符,消除不同系统的换行差异
$normalizedContent = str_replace(["\r\n", "\r"], "\n", $rawContent);

// 拆分为逐行数组,过滤空值,重置连续索引
$lines = array_values(
    array_filter(
        explode("\n", $normalizedContent),
        fn($line) => trim($line) !== ''
    )
);

// 按每6行一组拆分
$serverGroups = array_chunk($lines, 6);

// 可选:将每组拼接为单独的字符串,同时移除每组最后一行的分隔线
$serverTextArray = array_map(function($group) {
    // 不需要移除分隔线就注释掉下一行
    array_pop($group);
    return implode("\n", $group);
}, $serverGroups);

// 最终得到的$serverTextArray就是每个元素对应单台服务器内容的数组
?>

注意事项

如果原始字符串可能存在格式缺省、内容错位的问题,可以在array_chunk拆分后增加校验逻辑,判断每个分组的元素数量是否为6,过滤掉长度不符合要求的异常分组即可,避免脏数据影响后续处理。

内容的提问来源于stack exchange,提问作者Jack Norris

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.31 00:51:24