How to save a list of adb devices on the network in php array

Run command:

$output = shell_exec("adb devices -l");

echo  "$output";

and get the output as follows:

List of devices attached
10.16.21.138:5555      device product:tbltevzw model:SM_N915V device:tbltevzw
10.16.20.90:5555       device product:ghost_verizon model:XT1060 device:ghost

can anyone help save this information in a php associative array?

+4
source share
1 answer
// remove extra spaces, then split into array by new lines
$arr = explode("\n", preg_replace('/  +/',' ',$x));
array_shift($arr); // remove 1-st line
$result = Array();
foreach($arr as $v)
{
    $tmp = explode(' ',$v); // split each line into words
    list($ip,$port) = explode(':',$tmp[0]);
    $item = Array('ip'=>$ip, 'port'=>$port);    
    array_shift($tmp); // remove IP:PORT
    array_shift($tmp); // remove DEVICE
    foreach($tmp as $n)
    {
        list($key,$data) = explode(':',$n); // split by :
        $item[$key] = $data; // accumulate key/data pairs
    }
    $result[] = $item; // append device to the result array
}
+2
source

Source: https://habr.com/ru/post/1649749/


All Articles