php - 将文本排除到有效数组
问题描述
我有一个文本,我想通过排除将其转换为数组,但我无法获得真正的数组
# SRC-ADDRESS DST-ADDRESS PACKETS BYTES SRC-USER DST-USER 0 10.40.47.48 216.58.205.211 12 822 2 1 10.40.47.48 102.132.97.21 66 9390 2 2 184.106.10.77 10.40.47.252 10 1819 1 3 10.40.47.252 104.27.155.225 1 41 1 4 10.40.47.252 144.76.103.6 5 878 1 5 102.132.97.35 10.40.47.252 11 1159 1 6 10.40.47.252 52.169.53.217 1 397 1 7 104.27.155.225 10.40.47.252 1 52 1
我想要这样的结果
Array
(
[0] => Array
(
[.id] => *0
[src-address] => 10.40.47.50
[dst-address] => 185.144.157.141
[packets] => 6
[bytes] => 1349
)
[1] => Array
(
[.id] => *1
[src-address] => 195.122.177.151
[dst-address] => 10.40.47.48
[packets] => 4
[bytes] => 174
[dst-user] => 2
)
....
我试试这个,但它是错误的 $arr = exclude(" ",$text);
编辑 :
我可以通过另一种方式获取文本
0 src-address=108.177.15.188 dst-address=10.40.47.252 packets=1 bytes=52 dst-user="1" 1 src-address=10.40.47.48 dst-address=172.217.19.150 packets=11 bytes=789 src-user="2" 2 src-address=184.106.10.77 dst-address=10.40.47.252 packets=26 bytes=5450 dst-user="1"
解决方案
str_getcsv
尝试使用将分隔符替换为字符串的分隔符来读取字符串。
var_dump(str_getcsv($input, ","));
请注意手册指出分隔符必须是一个字符长。如果需要一个制表符或多个空格,您需要查看答案: str_getcsv on a tab-separated file
str-getcsv php 手册
推荐阅读
- java - 回调代码执行
- angular - 调用scrollTo()方法后如何在ngx-scrollbar中间停止滚动
- html - 如何根据我在 HTML 表单中的第一选择过滤第二选择的选项?
- excel - excel vba 中的 Zillow 网页抓取(大问题帮助)
- 3d - vpython7 替代 3d 对象可视化
- git - 无法在 Visual Studio Code Git Bash 上将 Github 从 SSH 重置为 HTTPS
- angular - Mat-spinner 适用于某些组件,但不适用于 Angular 中的某些其他组件
- visual-studio-code - 如果 VS Code 没有输入 | 无法输入 VS CODE
- r - R Markdown:为整个笔记本输出设置数学字体大小
- java - Spring Data JPA-如果在条件之间具有空值,则忽略参数