$tag='typeid=12 col=32 titlelen=23 infolen=23 imgwidth=23 imgheight=23 listtype=23 orderby=id keyword=sd';
像这样的一组字符串,怎么放到二维数组里边呢?
typeid 12
col 32
titlelen 23
infolen 23
...
就像这样的一个二维表。
使用explord可以解出数组,就是把字符串用空格作为分隔符分开而得到数组元素。
还有这个函数,得到的,好像不是想要的,是不是我用法的问题呀?
array_chunk(explode('|', $s), 4);见一些模板解板cms里边的标签里有像这样的属性,没看明白人家的思路,所以在此求解。还是我的思路有问题呀?还请各位大侠不吝赐教,小弟先在此谢过了……

解决方案 »

  1.   


    <?php
    $tag='typeid=12 col=32 titlelen=23 infolen=23 imgwidth=23 imgheight=23 listtype=23 orderby=id keyword=sd';
    $arr=explode(" ",$tag); //用空格分数组
    foreach($arr as $value)

       $crr[]=explode("=",$value);//把数组内的值再次用=号分成2个值的数组,最后arr里的值就是一个独立数组
     }
    print_r($crr);//整体输出
    echo $crr[0][1] //输出第一个元素的第一个值typeid=12里的12
    ?>
    是这样的意思?
      

  2.   

    explode
    把字串转成数组的一个函数。
      

  3.   

    那怎么能把这个串存成(['typeid']=>12,['col']=>32)
    这种形式的呢?这数组有点儿导不清了,
    再就是给字符串到这种形式,这应该是一维的吧?怎么从二维的转到这种形式的一维的。谢谢
      

  4.   

    $tag = 'typeid=12 col=32 titlelen=23 infolen=23 imgwidth=23 imgheight=23 listtype=23 orderby=id keyword=sd';parse_str(str_replace(' ', '&', $tag), $ar);print_r($ar);Array
    (
        [typeid] => 12
        [col] => 32
        [titlelen] => 23
        [infolen] => 23
        [imgwidth] => 23
        [imgheight] => 23
        [listtype] => 23
        [orderby] => id
        [keyword] => sd
    )
      

  5.   

    感谢xuzuning,以及楼上各家,就这么一行就解决问题了.就此结了!