我有以下文本,我需要格式化它与php逐行阅读,并能够在数据库中存储信息,我怎么能做到这一点与php?
不幸的是,我收到的格式总是这样的…php
处理起来很不舒服b'rnNombre de host: DESKTOP-5AB1DJ9rnNombre del sistema operativo: Microsoft Windows 10 PrornVersixa2n del sistema operativo:
10.0.19044 N/D Compilacixa2n 19044rnFabricante del sistema operativo: Microsoft CorporationrnConfiguracixa2n del sistema operativo: Estacixa2n de trabajo independienternTipo de compilacixa2n del sistema operativo: Multiprocessor FreernPropiedad de: UsuariornOrganizacixa2n registrada:
rnId. del producto: 00330-80000-00000-AA120rnFecha de instalacixa2n original: 27/09/2020, 8:19:08rnTiempo de arranque del sistema: 11/07/2022, 15:54:10rnFabricante del sistema: ASUSTeK COMPUTER INC.rnModelo el sistema: ZenBook UX533FD_UX533FDrnTipo de sistema: x64-based PCrnProcesador(es): 1 Procesadores instalados.rn
[01]: Intel64 Family 6 Model 142 Stepping 12 GenuineIntel ~1792 MhzrnVersixa2n del BIOS: American Megatrends Inc. UX533FD.306, 16/10/2019rnDirectorio de Windows: C:\WindowsrnDirectorio de sistema: C:\Windows\system32rnDispositivo de arranque: \Device\HarddiskVolume1rnConfiguracixa2n regional del sistema: es;Espaxa4ol (internacional)rnIdioma de entrada: es;Espaxa4ol (tradicional)rnZona horaria: (UTC+01:00) Bruselas, Copenhague, Madrid, Parxa1srnCantidad total de memoria fxa1sica: 16.198 MBrnMemoria fxa1sica disponible: 4.145 MBrnMemoria virtual: tamaxa4o mxa0ximo: 22.563 MBrnMemoria virtual: disponible: 3.330 MBrnMemoria virt
我将对转义序列执行' str_replace ',然后使用其中一种方法逐行迭代。这里有一个:
// Normalize
$data = str_replace('rn', PHP_EOL, $data);
// Allows for line-by-line
$fp = fopen("php://memory", 'r+');
fputs($fp, $data);
rewind($fp);
while($line = fgets($fp)){
echo $line;
}
fclose($fp);
此处演示:https://3v4l.org/S9XF7
不幸的是,您的数据有一些额外的转义需要考虑,但我认为在专门的问题中可能会更好。
如果您需要一个关联数组
,您可以尝试这样做<?php
$data = "b'rnNombre de host: DESKTOP-5AB1DJ9rnNombre del sistema operativo: Microsoft Windows 10 PrornVersixa2n del sistema operativo:
10.0.19044 N/D Compilacixa2n 19044rnFabricante del sistema operativo: Microsoft CorporationrnConfiguracixa2n del sistema operativo: Estacixa2n de trabajo independienternTipo de compilacixa2n del sistema operativo: Multiprocessor FreernPropiedad de: UsuariornOrganizacixa2n registrada:
rnId. del producto: 00330-80000-00000-AA120rnFecha de instalacixa2n original: 27/09/2020, 8:19:08rnTiempo de arranque del sistema: 11/07/2022, 15:54:10rnFabricante del sistema: ASUSTeK COMPUTER INC.rnModelo el sistema: ZenBook UX533FD_UX533FDrnTipo de sistema: x64-based PCrnProcesador(es): 1 Procesadores instalados.rn
[01]: Intel64 Family 6 Model 142 Stepping 12 GenuineIntel ~1792 MhzrnVersixa2n del BIOS: American Megatrends Inc. UX533FD.306, 16/10/2019rnDirectorio de Windows: C:\WindowsrnDirectorio de sistema: C:\Windows\system32rnDispositivo de arranque: \Device\HarddiskVolume1rnConfiguracixa2n regional del sistema: es;Espaxa4ol (internacional)rnIdioma de entrada: es;Espaxa4ol (tradicional)rnZona horaria: (UTC+01:00) Bruselas, Copenhague, Madrid, Parxa1srnCantidad total de memoria fxa1sica: 16.198 MBrnMemoria fxa1sica disponible: 4.145 MBrnMemoria virtual: tamaxa4o mxa0ximo: 22.563 MBrnMemoria virtual: disponible: 3.330 MBrnMemoria virt";
$data = str_replace("b'", '', $data);
$data = explode("rn", $data);
$informacion = [];
foreach($data as $dato){
$dato = explode(":", $dato);
$informacion[$dato[0]] = $dato[1];
}
print_r($informacion);
测试:https://3v4l.org/ZWBHi