现在又一段字符如下dhcp=1 ifname=eth0 ip=20.10.0.133 netmask=255.255.255.0 gateway=20.10.0.1 mac=00-30-1B-46-95-AA我想创建一个数组比如[dhcp] => 1 ;[ifname] => eth0 ····
就是“=”左边的是[KEY]右边的是[value]
有什么好的办法呢? 请帮忙解决一下

解决方案 »

  1.   

    <?php
    $str = 'dhcp=1 ifname=eth0 ip=20.10.0.133 netmask=255.255.255.0 gateway=20.10.0.1 mac=00-30-1B-46-95-AA';
    $str = str_replace(' ','&',$str);
    $arr = array();
    parse_str($str,$arr);
    var_dump($arr);
    ?>
      

  2.   

    或者
    <?php
    $str = 'dhcp=1 ifname=eth0 ip=20.10.0.133 netmask=255.255.255.0 gateway=20.10.0.1 mac=00-30-1B-46-95-AA';
    $arr = array();
    preg_match_all("/(.+)=(.+)( |$)/U",$str,$arr);
    $arr = array_combine($arr[1],$arr[2]);
    var_dump($arr);
    ?>