PHP格式化文本,创建列表并上传到mysqli



我有以下文本,我需要格式化它与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

最新更新