【发布时间】:2018-05-18 01:23:54
【问题描述】:
我想在每个空间将文本消息拆分为数组。在我收到这条短信之前,它一直工作得很好。 以下是处理文本字符串的几行代码:
$str = 'T bw4 05/09/19 07:51 am BW6N 499.803';
$cleanStr = iconv("UTF-8", "ISO-8859-1", $str);
$strArr = preg_split('/[\s\t]/', $cleanStr);
var_dump($strArr);
Var_dump 产生这个结果:
array:6 [▼
0 => "T"
1 => b"bw4 05/09/19"
2 => "07:51"
3 => "am"
4 => "BW6N"
5 => "499.803"
]
数组 "1 => b"bw4 05/09/19"" 中的#1 项不正确,我无法弄清楚数组值前面的字母“b”是什么。 此外,“bw4”和“05/09/19”之间的空格 非常感谢任何关于如何更好地实现字符串拆分的建议。 这是原始字符串:https://3v4l.org/2L35M,这是来自我的本地主机的结果图像:http://prntscr.com/jjbvny
【问题讨论】:
-
没看到~3v4l.org/TnmK5。你确定你在这里正确地表示了字符串?
-
这很棘手!当我发布问题时,一些字符可能被过滤掉了。这是原始字符串:3v4l.org/2L35M,这是来自我的本地主机的结果图像:prntscr.com/jjbvny
-
"
array:6 [▼" 不是标准的var_dump!您是否正在使用一些提供一些美化转储的框架或 PHP 扩展? -
@Daniel 问题是,这应该是与 PHP 6 的前向兼容性注释,但从未发生过。直到今天,二进制字符串和非二进制字符串之间没有区别。目前还不清楚这究竟是什么输出。