doushuo2834 2016-08-16 15:02
浏览 11
已采纳

PHP数组分解/爆炸

STARTING ARRAY

Array
 (
[0] => Array
    (
        [0] => /searchnew.aspx?Make=Toyota&Model=Tundra&Trim=CrewMax+5.7L+V8+6-Spd+AT+SR5&st=Price+asc
        [1] => 19
    )
 )

I have been struggling to break down this array for the past couple days now. I have found a few useful functions to extract the strings I need when a start and end point are defined, however, I can't see that being good for long term use. Basically I'm trying to take the string relative to [0], and extract the strings following "Model=" and "Trim=", in hopes to have array like this:

Array
(
[0] => Array
(
    [0] => Tundra ***model***
    [1] => CrewMax+5.7L+V8+6-Spd+AT+SR5 ***trim***
    [2] => 19
 )
)

I'm getting this information fed through an api, so coming up with a dynamic solution is my biggest challenge. I realize this a big question, but is there a better/less hacky way of approaching this problem?

  • 写回答

1条回答 默认 最新

  • duanhuhong5255 2016-08-16 15:08
    关注

    parse_url() will get you the query string and parse_str() parses the variables from that:

    $q = parse_url($array[0][0], PHP_URL_QUERY);
    parse_str($q, $result);
    
    print_r($result);
    

    Yields:

    Array
    (
        [Make] => Toyota
        [Model] => Tundra
        [Trim] => CrewMax 5.7L V8 6-Spd AT SR5
        [st] => Price asc
    )
    

    Now just echo $result['Model'] etc...

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 hexo+github部署博客
  • ¥15 求螺旋焊缝的图像处理
  • ¥15 blast算法(相关搜索:数据库)
  • ¥15 请问有人会紧聚焦相关的matlab知识嘛?
  • ¥15 网络通信安全解决方案
  • ¥50 yalmip+Gurobi
  • ¥20 win10修改放大文本以及缩放与布局后蓝屏无法正常进入桌面
  • ¥15 itunes恢复数据最后一步发生错误
  • ¥15 关于#windows#的问题:2024年5月15日的win11更新后资源管理器没有地址栏了顶部的地址栏和文件搜索都消失了
  • ¥100 H5网页如何调用微信扫一扫功能?